Se hai una cella che contiene un valore, potresti voler escogitare un modo per sommare tutte le cifre del valore. Ad esempio, se una cella contiene il valore 554, potresti voler determinare la somma di 5 + 5 + 4, che è 14.

Esistono diversi modi per affrontare questa attività. (Non sembra sempre così in Excel?) Il primo è usare una formula che si basa su diverse funzioni:

=SUMPRODUCT(--MID(A1,ROW(INDIRECT("1:" & LEN(A1))),1))

Questa formula regolare sommerà le cifre in qualsiasi valore intero (nella cella A1) in modo semplice ed elegante. Tuttavia, questa non è l’unica formula possibile. Quella che segue è una versione della formula matrice (terminata premendo Ctrl + Maiusc + Invio) della stessa formula:

=SUM(1*MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))

Entrambe queste formule funzionano bene se il valore in A1 è un numero intero positivo. Se nel numero sono presenti caratteri non numerici (come un segno negativo o un punto decimale), le formule restituiscono un #VALORE! errore.

È inoltre possibile utilizzare una funzione definita dall’utente per restituire la somma desiderata. La seguente macro passa attraverso ogni cifra nella cella di riferimento e calcola un totale. Questo valore viene quindi restituito all’utente:

Function AddDigits(Number As Long) As Integer     Dim i As Integer     Dim Sum As Integer     Dim sNumber As String

sNumber = CStr(Number)

For i = 1 To Len(sNumber)

Sum = Sum + Mid(sNumber, i, 1)

Next     AddDigits = Sum End Function

Per utilizzare questa funzione, usa una formula come = AddDigits (A1) in una cella. Una funzione definita dall’utente ancora più compatta (invocata nello stesso modo) è la seguente:

Function AddDigits(ByVal N As Long) As Integer     Do While N >= 1         AddDigits = AddDigits + N Mod 10         N = Int(N / 10)

Loop End Function

A differenza della macro precedente, questa versione non converte il contenuto della cella in una stringa per elaborarla. Invece, scorre ogni cifra del valore, rimuovendo l’ultima cifra e aggiungendola al totale.

_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 (2424) 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: