Un saluto anche a te Alfredo.
La richiesta di avere un "underscore" tra i blocchi numero rende necessariamente piu' articolata la function.
Allora, nicola, riassumendo tutti i discorsi fin qui fatti, la regola dovrebbe essere:
-eliminare tutti i caratteri non numerici
-separare i vari blocchi con un unico underscore
Se cosi' allora prova questa "penultima" udf:
- Codice: Seleziona tutto
Function myZpZp(ByVal myString As String) As String
Dim I As Long, J As Long
Dim myRes As String
'
For I = 1 To Len(myString)
If Mid(myString, I, 1) >= "0" And Mid(myString, I, 1) <= "9" Then
myRes = myRes & Mid(myString, I, 1)
J = J + 1
Else
If J > 1 And Mid(myString, I, 1) = "_" And Right(" " & myRes, 1) <> "_" Then
myRes = myRes & "_"
End If
End If
Next I
If Right(" " & myRes, 1) = "_" Then myRes = Left(myRes, Len(myRes) - 1)
myZpZp = myRes
End Function
Poi userai la formula
- Codice: Seleziona tutto
=myZpZp(A2)
Ciao