Abbiamo bisogno di estrarre solo i numeri da una cella alfanumerica di Excel; vediamo come fare.

Dovendo lavorare in ambiente VBA apriamo la relativa finestra.

In Excel XP o 2003
Menù Strumenti – Macro – Visual Basic Editor

In Excel 2007
Bottone di Office – Pulsante Opzioni di Excel – Impostazioni generali – Opzione Mostra scheda Sviluppo sulla barra multifunzione
A questo punto ritornando nella finestra di Excel verrà visualizzata anche la Scheda Sviluppo nella quale troviamo il pulsante Visual Basic

In Excel 2010/2013
Scheda File – Opzioni – Personalizzazone barra multifunzione – Selezionare Sviluppo nella sezione Schede principali
A questo punto ritornando nella finestra di Excel verrà visualizzata anche la Scheda Sviluppo nella quale troviamo il pulsante Visual Basic

Nella finestra Visual Basic inserire un nuovo modulo (menù Inserisci – Modulo) quindi copiare il codice riportato qui sotto:

Function estraicifre(Num As Range) As Double
Dim T As String
Dim C As String
Dim i As Integer
Dim IsNumero As Boolean
Application.Volatile True
T = Num.Value
C = ""
IsNumero = False
For i = 1 To Len(T)
If Mid(T, i, 1) = "," And IsNumero = True Then
C = C + ","
IsNumero = False
End If
If Mid(T, i, 1) <= "9" And Mid(T, i, 1) >= "0" Then
C = C + Mid(T, i, 1)
IsNumero = True
Else
IsNumero = False
End If
Next i
estraicifre = CDbl(C)

End Function

Chiudere la finestra di Visual Basic.

Posizionarsi nella cella in cui si vuole vengano  estratti i numeri e inserire la seguente funzione:

=estraicifre(Num)

Dove Num è il riferimento della cella dalla quale si vuole vengano estratti solo i numeri.

Se invece hai bisogno di estrarre e sommare tra loro i numeri presenti in una cella alfanumerica di Excel clicca qui per trovare la soluzione.

Informatics, ski racer, loves Finland, Norway, mountains, squash, photography, Drones and RC Helicopter – Snapchat: andrea.perotti

Translate »