È possibile accedere alla maggior parte delle funzioni del foglio di lavoro di Excel in VBA utilizzando l’oggetto WorksheetFunction. Tuttavia, alcune funzioni potrebbero non essere disponibili. Una di queste funzioni è BIN2DEC, che converte un valore binario in un valore decimale. Il motivo per cui non è disponibile è che BIN2DEC non è realmente una funzione del foglio di lavoro di Excel, ma fa parte del componente aggiuntivo Strumenti di analisi.

Stando così le cose, hai due opzioni: puoi caricare l’equivalente VBA di Analysis ToolPak oppure puoi creare la tua funzione BIN2DEC in VBA. Per fare il primo, assicurati di installare in Excel il componente aggiuntivo Strumenti di analisi – VBA. Se non è elencato nei componenti aggiuntivi disponibili, utilizzare Windows per cercare il file ATPVBAEN.XLA. (Se stai usando una versione linguistica di Excel diversa dall’inglese, la parte “EN”

del file sarà diversa.) Questo è il componente aggiuntivo effettivo che desideri abilitare.

Dopo aver abilitato il componente aggiuntivo, visualizza l’editor VBA e scegli Strumenti | Riferimenti per visualizzare la finestra di dialogo Riferimenti. Assicurati che il riferimento atpvbaen.xla sia selezionato. Chiudi la finestra di dialogo e puoi quindi utilizzare BIN2DEC proprio come faresti con qualsiasi altra funzione del foglio di lavoro.

L’altra opzione è creare la tua funzione BIN2DEC. Di seguito è riportato un esempio di una funzione che accetta una stringa che contiene le cifre binarie e restituisce un valore numerico che rappresenta il valore decimale di quella stringa.

Function Bin2Dec(sMyBin As String) As Long     Dim x As Integer     Dim iLen As Integer

iLen = Len(sMyBin) - 1     For x = 0 To iLen         Bin2Dec = Bin2Dec + _           Mid(sMyBin, iLen - x + 1, 1) * 2 ^ x     Next End Function

Questa funzione in realtà non ha le stesse limitazioni della funzione del foglio di lavoro BIN2DEC; funzionerà con numeri binari contenenti più di 10 cifre.

_Nota: _

Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.

ExcelTips è la tua fonte di formazione economica su Microsoft Excel.

Questo suggerimento (3063) si applica a Microsoft Excel 97, 2000, 2002 e 2003.