Come usare Visual Basic, Applications Edition per contare le occorrenze di un carattere in una selezione in Excel

Riepilogo

In Microsoft Excel è possibile utilizzare una macro per contare le occorrenze di un carattere specifico in una cella o in un intervallo di celle. Questo articolo contiene una macro di esempio per contare le occorrenze di un carattere specifico in una cella o in un intervallo di celle.

È anche possibile usare una formula per eseguire l'attività. Se si preferisce non utilizzare una macro, fare clic sui numeri degli articoli seguenti per visualizzare gli articoli della Microsoft Knowledge Base:

187667 formule per contare le occorrenze di testo, caratteri o parole in Excel per Mac

Ulteriori informazioni

Microsoft fornisce esempi di programmazione a scopo puramente illustrativo, senza alcuna garanzia di qualsiasi tipo, sia espressa che implicita, ivi incluse, senza limitazioni, le garanzie implicite di commerciabilità o idoneità per uno scopo particolare. In questo articolo si presuppone che l'utente conosca il linguaggio di programmazione in questione e gli strumenti utilizzati per creare ed eseguire il debug delle procedure. Gli esperti Microsoft sono autorizzati a fornire spiegazioni in merito alla funzionalità di una particolare routine, ma in nessun caso a modificare questi esempi per fornire funzionalità aggiuntive o a creare routine atte a soddisfare specifiche esigenze.

Esempio di routine di Visual Basic

La routine di Visual Basic seguente richiede un carattere (o caratteri), quindi cerca nella cella o nell'intervallo di celle attualmente selezionato e visualizza una finestra di messaggio che mostra il numero totale di occorrenze di tale carattere o stringa di caratteri. Funziona per tutti i caratteri alfanumerici.

Dim Count As Integer
Dim Target As String
Dim Cell As Object
Dim N As Integer

Sub Target_Count()
   Count = 0
   Target = InputBox("character(s) to find?")
   If Target = "" Then GoTo Done
      For Each Cell In Selection
         N = InStr(1, cell.Value, target)
         While N <> 0
            Count = count + 1
            N = InStr(n + 1, cell.Value, target)
         Wend
      Next Cell
   MsgBox count & " Occurrences of " & target
Done:
End Sub