Inversione dei nomi in posizione (Microsoft Excel)
George deve spesso lavorare con dati forniti da altre persone. Lavorando con questi dati, potrebbe essere necessario convertire un nome, ad esempio Joe Bloggs, in modo che il cognome sia il primo, come in Bloggs, Joe. George capisce che può usare una formula per invertire il nome, ma deve farlo nella stessa cella in cui risiede il nome. Si chiede se esiste un comando integrato che eseguirà questa operazione.
No, non esiste un comando integrato per farlo. Tuttavia, puoi creare una macro che eseguirà il passaggio per te. Questa macro potrebbe quindi essere assegnata a un tasto di scelta rapida o posizionata su una barra degli strumenti in modo che sia facilmente accessibile. Ecco una semplice macro che farà il passaggio:
Sub ReverseNames() Dim x As Integer Dim sCell As String Dim sLast As String Dim sFirst As String Dim rCell As Range For Each rCell In Selection sCell = rCell.Value x = InStr(sCell, " ") If x > 0 Then sFirst = Left(sCell, x - 1) sLast = Mid(sCell, x + 1) rCell.Value = sLast & ", " & sFirst End If Next Set rCell = Nothing End Sub
Per utilizzare la macro, seleziona semplicemente l’intervallo di celle che desideri influenzare e quindi eseguilo. La macro cerca uno spazio all’interno della cella e considera tutto ciò che è davanti allo spazio come nome e tutto dopo lo spazio come cognome. Questi due elementi vengono invertiti, viene inserita una virgola tra di loro e inseriti nuovamente nella cella.
_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 (3812) si applica a Microsoft Excel 97, 2000, 2002 e 2003. Puoi trovare una versione di questo suggerimento per l’interfaccia a nastro di Excel (Excel 2007 e versioni successive) qui: