Come utilizzare il sostituto in vba (con esempio)


È possibile utilizzare il metodo Substitute() in VBA per sostituire tutte le occorrenze di un testo specifico in una stringa con un nuovo testo.

Questo metodo utilizza la seguente sintassi di base:

Sostituisci (Testo, Vecchio_testo, Nuovo_testo, Numero_istanza)

Oro:

  • Testo : il testo in cui desideri sostituire i caratteri
  • Old_text : il testo da sostituire
  • New_text : il testo da utilizzare in sostituzione
  • Instance_num ( opzionale ) : quale istanza del vecchio testo sostituire. Se non ne viene specificato alcuno, tutte le occorrenze del vecchio testo verranno sostituite.

Gli esempi seguenti mostrano come utilizzare questo metodo nella pratica.

Esempio: come utilizzare Sostituto in VBA

Supponiamo di avere il seguente elenco di espressioni in Excel:

Supponiamo invece di voler sostituire ogni spazio in ogni cella con una virgola.

Per fare ciò possiamo creare la seguente macro:

 Sub SubstituteText()

Dim rng As Range, cell As Range
Set rng = Range(" A2:A9 ")

For Each cell In rng
    cell = WorksheetFunction.Substitute(cell, " ", ",")
Next
    
End Sub

Quando eseguiamo questa macro, riceviamo il seguente output:

Tieni presente che ogni spazio in ogni cella della colonna A è stato sostituito con una virgola.

Tieni presente che potremmo anche utilizzare la seguente sintassi per sostituire ogni spazio con nulla:

 Sub SubstituteText()

Dim rng As Range, cell As Range
Set rng = Range(" A2:A9 ")

For Each cell In rng
    cell = WorksheetFunction.Substitute(cell, " ", "")
Next
    
End Sub

Quando eseguiamo questa macro, riceviamo il seguente output:

Nota che ogni spazio in ogni cella della colonna A è stato sostituito con nulla.

In altre parole, abbiamo rimosso ciascuno spazio da ciascuna cella della colonna A.

Nota : qui è possibile trovare la documentazione completa per il metodo VBA Substitute .

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni utilizzando VBA:

VBA: come contare le occorrenze di caratteri in una stringa
VBA: come verificare se una stringa contiene un’altra stringa
VBA: come contare le celle con testo specifico

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *