Calcolare i divisori di un numero

Calcolare i divisori di un numero

Settembre 29, 2019 Off Di excelsapeviche

Avete bisogno di calcolare i divisori di un numero o di un insieme di numeri naturali?

La soluzione la offre Excelsapeviche, con il supporto di VBA (se sei neofita di VBA e non sai come attivarlo sulla tua cartella di lavoro, clicca qui.)

Per esempio, supponiamo che dobbiate calcolare i divisori  di un numero, o meglio di un range: dei primi 100 numeri naturali.

Prendete un foglio e una penna e iniziate a calcolare la fattorizzazione in numeri primi di ognuno di essi; dopodiché combinate tutti i fattori moltiplicandoli tra loro. Un po’ laborioso vero?

L’alternativa meno noiosa è la creazione di una funzione personalizzata chiamata anche User Defined Function di Excel. Proviamo a inserire il seguente codice, attivato VBA con un semplice ALT+F11.

Function Divisori(Cella)
Dim i, v, SizeD As Integer
Dim n, D() As Variant
SizeD = 1
v = Cella.Value
ReDim D(SizeD)
For i = 1 To (v \ 2)
If (v Mod i) = 0 Then
ReDim Preserve D(SizeD + 1)
SizeD = SizeD + 1
D(SizeD) = i
Else
End If
Next i
SizeD = SizeD + 1
ReDim Preserve D(SizeD)
D(SizeD) = v
Divisori = Join(D)
End Function

In tal modo, si viene a creare una nuova funzione customizzata di Excel chiamata Divisori, per calcolare tutti i divisori di un numero. Comparirà nella lista delle funzioni disponibili:

Calcolare i divisori di un numero

Arrivati a questo punto, basterà trascinare la funzione lungo la colonna B in modo da eseguirla per ogni numero:

 

Excel ci permette così di fare in automatico un calcolo lungo ed elaborato, se ci venisse richiesto per questioni lavorative o didattiche! Se invece sei interessato invece a fare la somma dei divisori di un numero, questo articolo ti verrà in aiuto e si basa sempre sulle tecniche VBA.

Per qualsiasi dubbio, informazione, o se vi siete mai chiesti qualcosa su excel che nessuno è riuscito a spiegarvi, contattateci!