LE FUNZIONI
Sono già presenti diverse funzioni in Excel. Potete trovarle facendo Inserisci => funzioni. A che cosa servono ?
Servono a aiutarvi a fare calcoli più complicati di una simplice addizione o sottrazione. ![]()
Queste funzioni fanno i calcoli usando i valori che avete dato. Questi valori sono chiamati argomenti. Così un funzione è formatta dal nome della funzione e dal o dagli argomenti per fare il calcolo.
Nom_della_funzione(argomento1;argomento2;...)
Secondo la funzione, possono esserci un argomento, due o tanti. Gli argomenti possono essere un numero, un testo, un valore logico come vero o falso, valori d'errore o l'indirizzo di una cella. Per usare una funzione, dovete sempre usare il segno "=".
Facciamo un esempio per chiarire un pò la situazione ! ![]()
Se volete per esempio fare la somma delle celle A1 fino a A10, potete usare la funzione somma(). Fate :
Inserisci => funzioni :
Potete cercare una funzione scegliendo nella categoria e selezionando la funzione, o altrimenti, potete anche scrivere il nome della funzione se lo conoscete e fare ok.
Per vostro esempio, scrivete "somma" e fate ok. Ora, vedete questo :
Vedete anche sopra che esiste la definizione della funzione, e poi, potete chiedere l'aiuto per sapere come scrivere gli argomenti.![]()
Dunque vedendo l'aiuto, sapete che potete scrivere la funzione così :
=somma(A1;A2;A3;...;A10)
o meglio
=somma(A1:A10)
Adesso che abbiamo visto le funzioni, volete provare a fare una somma se il colore è il colore della prima cella ! Cercate nelle funzioni, trovate la funzione somma.se e guardando l'aiuto vedete che non potete usarla in questo caso. Dunque, tocca a voi di fare un funzione !!! ![]()
Come se fà una funzione ? chiedetemi !
Una funzione si fà con lo stesso principio che la macro. la differenza, è che dovete introdurla in maniera diversa. Per le macro, abbiamo visto che un macro si crea con le parole :
Sub macro()
...
End sub
Vi ricordate ? ![]()
Una funzione si crea con le parole :
Function nome(argomento1;argomento2;...)
...
End sub
Allora, come faremo con una macro a calcolare tutte le celle che sono scritte con il colore della cella A1. Faremo così. Avreste trovato ? Communque è già una macro difficile.
Sub somma_scritta_colorata
Dim colore As Integer
Dim result As Long
Dim cella as Range
colore = range("A1").
Font.ColorIndex
range("A1:A10").select
For Each cella In selection
If cella.Font.ColorIndex = colore Then
result = result + cella.Value
End If
Next
Msgbox(result)
End sub
Scrivete nel foglio1 questo :
E provate : Vedete "2000" ? Bene.
Adesso, cambiate la macro con una funzione :
Dovete rifleterre sugli argomenti : Dovete avere l'indirizzo della cella con il colore del testo, e avere la spiaggia della somma.
Dunque ci sono due argomenti, allora, comincia così :
Function somma_secolore(cella As Excel.Range, cella2 As Range)
Vi dò anche un' astuzia : Perchè la funzione sia aggiornata, dovete usare la parola : Application.Volatile '(grazie a Maurizio di avermi insegnato questa parola !).
Allora :
Function somma_secolore(cella As Excel.Range, cella2 As Range)
Application.Volatile
...
End Function
Adesso che avete le chiavi, vi lascio cercare. Coraggio !
Avete trovato ? Altrimenti potete guardare cui :
Prova :