Aggiungere trattini tra le lettere

Silvio si chiede come può fare in modo che Excel aggiunga automaticamente un trattino tra ogni lettera in una determinata cella. Ad esempio, se la cella A1 contiene “casa”, Silvio vorrebbe convertirla in “c-a-s-a”.

Questo può essere fatto con una formula, ma diventa rapidamente poco maneggevole. Ad esempio, la seguente formula può essere utilizzata per inserire dei trattini tra le lettere di qualsiasi cosa tu digiti nella cella A1:

=SCEGLI(LUNGHEZZA(A1);A1;SINISTRA(A1;1) & "-" & DESTRA(A1;1);SINISTRA(A1;1) & "-" & STRINGA.ESTRAI(A1;2;1) & "-" & DESTRA(A1;1);SINISTRA(A1;1) & "-" & STRINGA.ESTRAI(A1;2;1) & "-" & STRINGA.ESTRAI(A1;3;1) & "-" & DESTRA(A1;1);SINISTRA(A1;1) & "-" & STRINGA.ESTRAI(A1;2;1) & "-" & STRINGA.ESTRAI(A1;3;1) & "-" & STRINGA.ESTRAI(A1;4;1) & "-" & DESTRA(A1;1);SINISTRA(A1;1) & "-" & STRINGA.ESTRAI(A1;2;1) & "-" & STRINGA.ESTRAI(A1;3;1) & "-" & STRINGA.ESTRAI(A1;4;1) & "-" & STRINGA.ESTRAI(A1;5;1) & "-" & DESTRA(A1;1))

Questo particolare esempio di formula funzionerà solo su testi lunghi fino a sei caratteri. Pertanto, funzionerebbe correttamente per “casa”, ma non per “famiglia”. La formula potrebbe essere implementata ma, ancora una volta, diventerebbe rapidamente molto lunga.

Un approccio migliore consiste nell’utilizzare una macro per eseguire la conversione. Se vuoi inserire i trattini direttamente nella cella, puoi usare una macro come questa:

Questo contenuto è riservato agli abbonati

Solo gli utenti con Abbonamento VBA Coder oppure Ultimate possono visionarlo.

Se sei già abbonato Accedi per sbloccare il contenuto!

In caso contrario abbonati qui! L'abbonamento è conveniente.

E puoi interromperlo in ogni momento e in completa autonomia.

(puoi renderti conto di quanti siano i contenuti riservati

raggiungendo questa pagina)

Tags: , , , , , , , , , , ,

Ti è stato utile?

Articolo precedente

Come separare Pari e Dispari