Il 0% ha trovato utile questo documento (0 voti)
15 visualizzazioni82 pagine

DM66 XL3 Macro

Caricato da

marco.sechi
Copyright
© © All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd
Il 0% ha trovato utile questo documento (0 voti)
15 visualizzazioni82 pagine

DM66 XL3 Macro

Caricato da

marco.sechi
Copyright
© © All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd
Sei sulla pagina 1/ 82

DECRETO MINISTERIALE 66/2023

Formulario Funzioni di Microsoft EXCEL

Microsoft EXCEL – Formulari

E-mail: [email protected]
Supporto I

Vers 01/11/2024

Supporto I - DM66 – Microsoft EXCEL: Formulario funzioni Istruttore: Marco Sechi


2
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Funzioni principali in
EXCEL/CALC
https://support.office.com/it-it/article/Funzioni-di-Excel-in-ordine-alfabetico-b3944572-255d-4efb-bb96-c6d90033e188?NS=EXCEL&Version=16&SysLcid=1040&UiLcid=1040&AppVer=ZXL160&HelpId=154468&ui=it-IT&rs=it-IT&ad=IT

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


Le funzioni disponibili in EXCEL/CALC sono utilizzate all'interno delle celle per
3 costruire le formule. Una formula si riconosce perchè inizia con =

La sintassi generica di una funzione è la seguente


= NOMEFUNZIONE(Argomento1, Argomento2, … [ArgomentoN])
Quando nella notazione relativa alla sintassi di una funzione un elemento appare
racchiuso tra [] questo è facoltativo (ad esempio l'argomentoN).
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Si rammenta che gli argomenti possono essere delle costanti (12, "Ciao" …) oppure
dei riferimenti a celle singole o gruppi:
A1,
B2:C9,
'Esiti Esame'!B5,
'[Sessione2014.xlsx]Esiti Esame'!$A$2.
oppure altre funzioni
ANNO(ADESSO()), SINISTRA(DESTRA(TESTO(OGGI();"AAAA");2);1),…

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


4 Indice delle funzioni
Statistico/Matematiche RESTO, RADQ, SOMMA, MEDIA, PICCOLO, GRANDE, CONTA.SE, SOMMA.SE,
CONTA.VALORI, CONTA.NUMERI, CONTA.VUOTE, CONTA.PIU.SE,
SOMMA.PIU.SE, MIN.PIU.SE, MAX.PIU.SE, DEV.ST.P, DEV.ST.C, VAR.P,
VAR.C, CASUALE.TRA, CASUALE, MIN, MAX, ASS
Manipolazione stringhe STRINGA.ESTRAI, CONCATENA,CODICE, CODICE.CARATT, MAIUSC, MINUSC,
SINISTRA, DESTRA, LUNGHEZZA, TROVA, ANNULLA.SPAZI, RICERCA,
RIPETI, SOSTITUISCI
Formule di conversione ARROTONDA, FISSO, TRONCA, INT, TESTO, VALORE, ORARIO.VALORE,
DATA.VALORE
Formule cronologiche OGGI, ADESSO, ORA, MINUTO, SECONDO, ANNO, MESE,
GIORNO.SETTIMANA, GIORNO, GIORNI
Test e di controllo SE, SE.ERRORE, E, O, VAL.ERRORE, VAL.ERR, VAL.NON.DISP,
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

VAL.NUMERO, VAL.VUOTO, VAL.TESTO


Formule informative AMBIENTE.INFO, CELLA , INDIRIZZO, INDIRETTO, INDICE

Formule di ricerca CERCA.VERT, CONFRONTA, CERCA, SCEGLI, CERCA.ORIZZ., RANGO.UG

Formule matriciali Costanti matriciali, MATRICE.PRODOTTO, MATR.SOMMA.PRODOTTO,


MATR.TRASPOSTA , MATR.INVERSA, MATR.DETERM
Formule notazione
BINARIO.DECIMALE, BINARIO.HEX, HEX.DECIMALE, HEX.BINARIO,
DECIMALE.BINARIO, DECIMALE.HEX, BIT.SPOSTA.DX, BIT.SPOSTA.SX

Formule finanziarie RATA, INTERESSI

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


5 Statistico/Matematiche
RESTO, RADQ, SOMMA, MEDIA, PICCOLO, GRANDE, CONTA.SE,
SOMMA.SE, CONTA.VALORI, CONTA.NUMERI, CONTA.VUOTE,
CONTA.PIU.SE, DEV.ST.P, DEV.ST.C, VAR.P, VAR.C,
CASUALE.TRA, CASUALE, MIN, MAX, ASS

=RESTO(Dividendo;Divisore)
La funzione RESTO restituisce il resto della divisione intera tra il primo argomento
(DIVIDENDO) e il secondo (DIVISORE). Se il secondo argomento è zero la funzione
restituisce il codice di errore #DIV/0!.
=RESTO(17;10) ==> resto della divisione intera tra 17 e
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

10 quindi 7
=RESTO(10;0) ==> #DIV/0! (in Scalc #Valore!)

=RADQ(Numero)
La funzione RADQ restituisce la radice quadrata del NUMERO passato come argomento.
La radice quadrata di un numero negativo determina il seguente errore:
=RAQ(-25) ==> #NUM! (in Scalc Err:502 – argomento non
valido)

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


=SOMMA(argomento1[;argomento2;...])
6
La funzione SOMMA calcola la somma dei soli valori numerici contenuti nelle celle indicate
negli argomenti. Eventuali dati non numerici (stringhe, valori booleani, date) presenti nelle
celle indicate dagli argomenti verranno ignorati.
=SOMMA(1;A1;B2:B4) ==> somma i valori dell'area B2:B4 con
quello di A1 più la costante 1
=SOMMA(A1:B20 A3:C6) ==> Somma i valori dell'intersezione
tra A1:B20 e A3:B6 (solo per Excel)
La funzione SOMMA in Excel 2016 ammette al massimo 255 argomenti (30 in scalc). In scalc
i valori booleani VERO e FALSO vengono trasformati rispettivamente in 1 e 0 pertanto la
somma di 5 celle contenenti la costante VERO restituisce 5.

=MEDIA(argomento1[;argomento2;...])
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

La funzione MEDIA calcola la media dei soli valori numerici contenuti nelle celle indicate
negli argomenti. La media di un'area priva di valori numerici restituisce #DIV/0! (anche
in scalc!). La media viene calcolata solo sulle celle che contengono realmente numeri.
=MEDIA(A1;B2:B4) ==> media dei valori nell'area B2:B4 e A1
=MEDIA(A1:B20 A3:C6) ==> Media dei valori nell'intersezione
tra A1:B20 e A3:B6 (solo per Excel)
La funzione MEDIA in Excel 2016 ammette al massimo 255 argomenti (30 in scalc).
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
7
=GRANDE(Matrice;N)
=PICCOLO(Matrice;N)
La funzione GRANDE / PICCOLO estrae l'N-esimo valore più grande / piccolo della
sequenza di valori contenuti nell'area MATRICE. Se nell'area MATRICE non sono
definiti almeno N valori numerici la funzione restituisce l'errore #NUM! ( #VALORE!
in scalc).
=GRANDE(A1:A10;1) ==> valore + grande nell'area A1:A10
=GRANDE(A1:A10;10) ==> valore + piccolo nell'area A1:A10
=PICCOLO(A1:A10;1) ==> valore + piccolo nell'area A1:A10
=PICCOLO(A1:A10;10) ==> valore + grande nell'area A1:A10
=PICCOLO(A1:A10;10) ==> #NUM!
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=CONTA.SE(MatriceDati;Relazione)
La funzione CONTA.SE conta i dati presenti dell'area MATRICEDATI che soddisfano
la relazione indicata in RELAZIONE
=CONTA.SE(C1:C3;"=X") ==> Conta le celle di C1:C3 che
contengono il carattere "X" (il
confronto non è case sensitive)
=CONTA.SE(C1:C3;"X") ==> identico a sopra
=CONTA.SE(C1:C3;">10") ==> conta i valori maggiori di 10
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
8
=SOMMA.SE(MatriceDati;
Relazione;
[MatriceSomma])
La funzione SOMMA.SE somma i dati dell'area MATRICESOMMA che occupano la
medesima posizione di quelli della MATRICEDATI che soddisfano la relazione indicata
in RELAZIONE. Il confronto non è case sensitive.
Se l'argomento MATRICESOMMA non è presente allora SOMMA.SE restituisce la somma
dei valori di MATRICEDATI che soddisfano la condizione indicata in RELAZIONE.
=SOMMA.SE(A1:C3;"=X";E1:G3) ==> Somma i valori in E1:G3 che
si trovano nella stessa posizione delle celle di A1:C3
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

contenenti il carattere "X"


=SOMMA.SE(A1:C3;"X";E1:G3) ==> come sopra

=SOMMA.SE(E1:G3;">10") ==> somma i valori in E1:G3 maggiori


di 10

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


9 =CONTA.VALORI(Area1[,Area2,…,Area255])
La funzione CONTA.VALORI conta il numero di celle non vuote nelle aree Areai. Le
celle contenenti formule (anche ="") vengono considerate non vuote indipendentemente
dal risultato restituito. Excel 2016 ammette 255 argomenti mentre scalc 30.
=CONTA.VALORI(A1:B3) ==> numero celle non vuote

=CONTA.NUMERI(Area1[,Area2,…,Area255])
La funzione CONTA.NUMERI conta i numeri presenti nelle aree Areai. Le celle
contenenti formule che restituiscono numeri e che non determinano situazioni di errore
vengono conteggiate. In scalc gli argomenti sono 30.
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=CONTA.NUMERI(A1:B3) ==> nr celle con valori numerici

=CONTA.VUOTE(Area1[,Area2,…,Area255])
La funzione CONTA.VUOTE conta le celle prive di contenuti nelle aree Areai. Le celle
contenenti formule che restituiscono la stringa vuota ("") e che non determinano
situazioni di errore vengono comunque conteggiate.
=CONTA.VUOTE(A1:B3) ==> nr celle senza contenuto o con
="" (solo excel!)

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


10 =DEV.ST.P(argomento1[;argomento2;...])
=DEV.ST.C(argomento1[;argomento2;...])
=VAR.P(argomento1[;argomento2;...])
=VAR.C(argomento1[;argomento2;...])
La funzione DEV.ST.P calcola la deviazione standard o scarto quadratico medio della
sequenza di valori numerici passata come argomenti. La deviazione standard di un'area
priva di valori restituisce l'errore #DIV/0!.

=DEV.ST.P(A1;B2:B4) ==> scarto quadratico medio dei valori


in B2:B4 e A1
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

La funzione DEV.ST.P in Excel 2016 ammette al massimo 254 argomenti. In scalc e nelle
versioni precedenti ad Excel 2010 la funzione ha un altro nome: DEV.ST.POP. In scalc il
numero di argomenti ammesso è 30.
La formula della deviazione standard è la seguente:

dove M è la media dei valori Xi e N la numerosità della sequenza X={Xi | i= 1 ... N}.
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
11
La deviazione standard restituisce una stima della variabilità dei valori Xi della sequenza
rispetto alla loro media aritmetica M. Maggiore è il valore della deviazione standard
maggiori sono le variazioni dei valori rispetto alla media. Quindi una sequenza
composta sempre dallo stesso valore (sequenza costante) avrà una deviazione standard
nulla poiché la distanza di ogni singolo valore dalla media è nulla.
Altre funzioni statistiche collegate a Dev.St.P disponibili in Excel (che ammettono al
massimo 254 argomenti) sono:
Dev.St.C che restituisce la deviazione standard corretta. Nelle versioni
precedenti alla 2010 aveva il nome Dev.St. Lo stesso nome è usato attualmente
da scalc.

̅
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Var.P che restituisce la varianza (il quadrato di Dev.St.P). In scalc e nelle


versioni precedenti alla 2010 ha un nome differente: Var.Pop. La formula
utilizzata per il calcolo della varianza è quindi la seguente:

Var.C che restituisce la varianza corretta (il quadrato di Dev.St.C). In scalc e


nelle versioni precedenti alla 2010 ha un nome differente: Var.
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
Immaginiamo di avere 4
12
APPROFONDIMENTI
arcieri che abbiano
conseguito i seguenti
punteggi.
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Tutti è 4 gli arcieri hanno la medesima media ma la


variabilità nei tiri effettuati è decisamente differente.
Se raffiguro i risultati
di ogni singoli tiro,
rispetto alla media,
ottengo le seguenti
rappresentazioni:

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


13
I grafici evidenziano i diversi comportamenti delle singole sequenze di tiro. La media pone
tutti gli arcieri allo stesso livello mentre una rilevante deviazione standard manifesta una
certa imprevedibilità del punteggio ad ogni singolo tiro.
Maggiore è la variabilità di un fenomeno minore è il grado di prevedibilità. Diventa quindi
importante avere un indicatore che misuri lo scostamento medio della sequenza rispetto
ad un indice di posizione come la media.
La distanza media dei valori Xi della sequenza X rispetto alla loro media aritmetica M può
essere considerato un indice che misura il grado di variabilità della sequenza.
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

In realtà in statistica la variabilità viene valutata mediante indicatori similari ed


esattamente quelli citati:

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


14 =CASUALE.TRA(InteroDa;InteroA)
La funzione CASUALE.TRA restituisce un numero casuale intero compreso tra il
primo e il secondo argomento (inclusi!). Un nuovo numero casuale viene restituito
quando il foglio viene ricalcolato (basta premere il tasto F9 sia in Excel/OOCalc, Ctrl+ in
Mac).
=CASUALE.TRA(1;100) ==> Genera un valore casuale tra 1 e
100 compresi
=CASUALE.TRA(1;CASUALE.TRA(1;2))
==> Genera un valore casuale compreso tra 1 e 2 ma
l'1 ha una probabilità di uscita pari a 75%
mentre il 2 del 25%
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=CASUALE()
La funzione CASUALE restituisce un numero reale casuale distribuito in maniera
uniforme nell'intervallo [0,1). Un nuovo numero casuale viene restituito quando il
foglio viene ricalcolato (tasto F9 sia in Excel/scalc, Ctrl+ in Mac). Per generare un
numero reale nell'intervallo [A,B) basta applicare la seguente formula:
=CASUALE()*(B-A)+A ==> Genero un valore reale in [A,B)

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


15 =MIN(argomento1[;argomento2;...])
=MAX(argomento1[;argomento2;...])
La funzione MIN restituisce il valore minimo tra i valori numerici contenuti nelle aree
indicate come argomenti. La funzione MAX restituisce il valore massimo. Eventuali
stringhe presenti nelle celle associate agli argomenti verranno ignorate. La statistica
viene prodotta solo per le celle che contengono realmente numeri!
=MIN(B2:B4) ==> minimo dei valori nell'area B2:B4
=MAX(B2:B4) ==> massimo dei valori nell'area B2:B4
Queste funzioni in Excel 2016 ammettono al massimo 255 argomenti (30 in scalc).

=ASS(Numero)
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

La funzione ASS restituisce il valore assoluto del valore numerico passato come
parametro.
=ASS(-100) ==> 100
=ASS(100) ==> 100
=ASS("Ciao") ==> #VALORE!

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


16 Manipolazione stringhe
STRINGA.ESTRAI, CONCATENA,CODICE, CODICE.CARATT, MAIUSC,
MINUSC, SINISTRA, DESTRA, LUNGHEZZA, TROVA, ANNULLA.SPAZI,
RICERCA, RIPETI, SOSTITUISCI

=STRINGA.ESTRAI(Argomento; I; N)
La funzione STRINGA.ESTRAI restituisce, partendo dall'i-esimo carattere compreso,
N caratteri presi dalla stringa ARGOMENTO passata come 1° argomento.
=STRINGA.ESTRAI("Questa è una frase";3;8) ==> "esta è u"
I tre argomenti sono obbligatori. i deve avere un valore maggiore di 0 altrimenti nella
cella contenente la formula verrà Excel visualizza l'errore #VALORE! (ERR:502 in
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

OOCalc).
=STRINGA.ESTRAI("Questa è una frase";10;3) ==> "una"
=STRINGA.ESTRAI(F28;LUNGHEZZA(F28);1) ==> =DESTRA(F28)
=STRINGA.ESTRAI("Questa è una frase";3;1) ==> "e": il terzo
carattere
Attenzione: La posizione di un carattere in una stringa va calcolata tenendo presente
che la numerazione parte da 1 e non da 0 come solitamente avviene in altri linguaggi di
programmazione.

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


17
=CONCATENA(Stringa1[;Stringa2;
...;Stringa30;...])
La funzione CONCATENA unisce diversi argomenti in un'unica stringa. E' possibile
utilizzare l'operatore & in alternativa.
=CONCATENA("Ciao";" ";"Marco") ==> "Ciao Marco"
="Ciao" & " " & "Marco" ==> "Ciao Marco"
=CONCATENA(A1;A2) ==> "Ave Students" se in A1 ho "Ave "
e in A2 ho "Students"
La funzione CONCATENA in Excel 2016 ammette al massimo 255 argomenti (30 in
scalc).

=CODICE(Argomento)
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

La funzione CODICE restituisce il codice ascii del primo carattere della stringa passata
come ARGOMENTO.
=CODICE("A") ==> 65
=CODICE("AVE") ==> 65
=CODICE("a") ==> 97
=CODICE(1) ==> 49
=CODICE("1") ==> 49
=CODICE(A1) ==> 67 se nella cella A1 ho il valore "Ciao"
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
18
=CODICE.CARATT(Argomento)
La funzione CODICE.CARATT restituisce il carattere il cui codice ascii è passato come
ARGOMENTO.
=CODICE.CARATT(97) ==> "a"
=CODICE.CARATT(65) ==> "A"
L'intervallo dei valori ammessi come ARGOMENTO va da 1 a 255. Se digito un valore
esterno a questo intervallo Excel restituisce il codice di errore: #VALORE! (ERR:502 in
scalc).

=MAIUSC(Argomento)
=MINUSC(Argomento)
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

MAIUSC restituisce la stringa ARGOMENTO in maiuscolo. MINUSC restituisce la stringa


ARGOMENTO in minuscolo.
Esempio: combinando alcune delle funzioni viste possiamo trasformare il contenuto di
una cella in modo che venga scritto tutto in minuscolo ad esclusione della prima lettera
viene scritta in maiuscolo (tipico nei nomi propri). Supponiamo che in A1 ci sia: "mArCo"
=MAIUSC(SINISTRA(A1)) & MINUSC(DESTRA(A1;LUNGHEZZA(A1)-1))
==>"Marco"
In realtà esiste una funzione (anche in scalc) che fa la stessa cosa: MAIUSC.INIZ

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


19
=SINISTRA(Argomento; [N])
La funzione SINISTRA ha 2 argomenti. L'argomento N è facoltativo. La funzione
SINISTRA restituisce i primi N caratteri della stringa ARGOMENTO. Quando N è
omesso estrae solo il primo carattere di ARGOMENTO.
=SINISTRA("Questa è una frase";4) ==> "Ques"
=SINISTRA("Questa è una frase") ==> "Q"
=SINISTRA(A1;3) ==> "PIP" se nella cella A1 ho "PIPPO"

=DESTRA(Argomento; N)
La funzione DESTRA ha 2 argomenti. L'argomento N è facoltativo. La funzione
DESTRA restituisce gli ultimi N caratteri della stringa ARGOMENTO. Quando N è
omesso estrae l'ultimo carattere di Argomento.
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=DESTRA("Questa è una frase";4) ==> "rase"


=DESTRA("Questa è una frase") ==> "e"

=LUNGHEZZA(Argomento)
La funzione LUNGHEZZA restituisce il numero di caratteri contenuti nella stringa
passata come argomento (spazi compresi).
=LUNGHEZZA("Questa è una frase ") ==> 19
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
20 =TROVA(StringaCercata;
StringaDoveCerco [;I])
Restituisce la posizione della 1° occorrenza di STRINGACERCATA a partire dall'I-esimo
carattere della stringa STRINGADOVECERCO. Se non trova niente restituisce
#VALORE! (lo stesso codice di errore viene restituito anche da scalc). Quando I è
omesso la ricerca parte dal primo carattere.
=TROVA("fra";"Questa è una frase fraintesa") ==> 14
=TROVA("fra";"Questa è una frase fraintesa";15) ==> 20
La funzione TROVA è case sensitive (ovvero distingue tra maiuscolo e minuscolo)
=TROVA("FRA";"Questa è una frase fraintesa";15) ==> #VALORE!
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

La funzione TROVA, se il primo argomento è la stringa vuota "" restituisce 1.


=TROVA("";"Ave Students") ==> 1

=ANNULLA.SPAZI(Argomento)
Sostituisce nell'ARGOMENTO (di tipo stringa) qualsiasi sequenza di spazi con un singolo
spazio. Elimina inoltre gli spazi iniziali e finali.
=ANNULLA.SPAZI(" Ciao sono io ") ==> "Ciao sono io"

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


21 =RICERCA(StringaCercata;
StringaDoveCerco [;I])
Restituisce la posizione della 1° occorrenza di STRINGACERCATA a partire dall'I-esimo
carattere della stringa STRINGADOVECERCO. Se non trova niente restituisce
#VALORE! (lo stesso codice di errore viene restituito anche da scalc). Quando I è
omesso la ricerca parte dal primo carattere.
=RICERCA("fra";"Questa è una frase fraintesa") ==> 14
=RICERCA("fra";"Questa è una frase fraintesa";15) ==> 20
La funzione RICERCA non è case sensitive (ovvero distingue da maiuscolo e minuscolo)
=RICERCA("FRA";"Questa è una frase fraintesa";15) ==> 20
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

La funzione RICERCA, se il primo argomento è la stringa vuota "" restituisce 1.


=RICERCA("";"Ave Students") ==> 1

=RIPETI(Argomento;N)
Ripete ARGOMENTO (di tipo stringa) per N volte
=RIPETI("CIAO";3) ==> "CIAOCIAOCIAO"
=RIPETI("CIAO";0) ==> ""

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


22
=SOSTITUISCI(Stringa;StringaCercata;
NewStringa;[I])
Restituisce la stringa ottenuta sostituendo nel 1° argomento Stringa tutte le occorrenze
della sottostringa StringaCercata con la stringa NewStringa passata come 3°
argomento.
=SOSTITUISCI("CIAO CASA";"A";"*") ==> "CI*O C*S*"
La funzione SOSTITUISCI è case sensitive (ovvero distingue tra maiuscolo e minuscolo)
=SOSTITUISCI("CIAO CASA";"a";"*") ==> "CIAO CASA"
Se è presente il parametro facoltativo I allora solo l'I-esima occorrenza della
StringaCercata verrà sostituita con NewStringa
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=SOSTITUISCI("CIAO CASA";"A";"*";2) ==> "CIAO C*SA"

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


23
Formule di conversione
ARROTONDA, FISSO, TRONCA, INT, TESTO, VALORE,
ORARIO.VALORE, DATA.VALORE

=ARROTONDA(Argomento;N)
La funzione ARROTONDA arrotonda ARGOMENTO a N cifre decimali. Restituisce quindi
un risultato numerico. N è obbligatorio.
=ARROTONDA(1,449;1) ==> 1,4
=ARROTONDA(1,45;1) ==> 1,5
=ARROTONDA(1,45;0) ==> 1
=ARROTONDA(-1,449;1) ==> -1,4
=ARROTONDA(-1,45;1) ==> -1,5
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=ARROTONDA(-1,45;0) ==> -1
=ARROTONDA(151,9351;-3) ==> 0
=ARROTONDA(151,9351;-2) ==> 200
=ARROTONDA(151,9351;-1) ==> 150
=ARROTONDA(151,9351;0) ==> 152
=ARROTONDA(151,9351;1) ==> 151,9
=ARROTONDA(151,9351;2) ==> 151,94
=ARROTONDA(151,9351;3) ==> 151,935
=ARROTONDA(151,9351;4) ==> 151,9351
=ARROTONDA(151,9351;5) ==> 1551,9351
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
24
=FISSO(Argomento;[N];
[NoSeparatoreMigliaia])
La funzione FISSO arrotonda ARGOMENTO a N cifre decimali e lo restituisce in forma
testuale, formattandolo (se richiesto!) con i separatori delle migliaia e la virgola decimale.
Se N è omesso l'arrotondamento è fatto a 2 cifre decimali. NOSEPARATOREMIGLIAIA
di default è FALSO pertanto il separatore delle migliaia viene visualizzato a meno che
non si imposti il parametro a VERO.
=FISSO(1551,935) ==> "1.551,94" (N di default vale 2)
=FISSO(1551,935;-4) ==> "0"
=FISSO(1551,935;-3) ==> "2.000"
=FISSO(1551,935;-2) ==> "1.600"
=FISSO(1551,935;-1) ==> "1.550"
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=FISSO(1551,935;0) ==> "1.552"


=FISSO(1551,935;1) ==> "1.551,9"
=FISSO(1551,935;2) ==> "1.551,94"
=FISSO(1551,935;3) ==> "1.551,935"
=FISSO(1551,935;4) ==> "1.551,9350"
=FISSO(1551,935;3;FALSO) ==> "1.551,935" (scalc sostituisce
FALSO con 1 in automatico)
=FISSO(1551,935;3;VERO) ==> "1551,935" (in scalc sostituisce
VERO con 1 in automatico)
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
25
=TRONCA(Argomento;[N])
=INT(Argomento)
La funzione TRONCA elimina la parte decimale di un numero senza effettuare alcun
arrotondamento. Il valore N ha come valore di default zero. La funzione INT
arrotonda per difetto all'intero inferiore.
Le funzioni TRONCA (con N=0) e INT si differenziano soltanto quando si utilizzano
valori negativi:
=TRONCA(4,9) ==> 4
=TRONCA(4,09) ==> 4
=INT(4,9) ==> 4 (è l'intero inferiore più vicino)
=TRONCA(-4,9) ==> -4
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=INT(-4,09) ==> -5 (è l'intero inferiore più vicino)


Vediamo ora degli esempi con N diverso da zero:
=TRONCA(129,921;0) ==> 129
=TRONCA(129,921;1) ==> 129,9
=TRONCA(129,921;2) ==> 129,92
=TRONCA(129,921;3) ==> 129,921
=TRONCA(129,921;-1) ==> 120 (tronca alla decina)
=TRONCA(129,921;-2) ==> 100 (tronca alle centinaia)
=TRONCA(129,921;-3) ==> 0
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
=TESTO(Argomento; [MascheraFormato])
26
Trasforma il primo parametro ARGOMENTO secondo le specifiche indicate in
MASCHERAFORMATO. Nella tabella sottostante sono elencate le specifiche relative ai
formati di tipo data/ora.
Maschera
Esempio Risultato Descrizione
di formato
"g" =TESTO("02/02/2005 01.02.03";"g") "2" Visualizza il giorno come numero senza zero iniziale (1 – 31).
"gg" =TESTO("02/02/2005";"gg") "02" Visualizza il giorno come numero con zero iniziale (01 – 31).
"ggg" =TESTO("02/02/2005";"ggg") "mer" Visualizza il giorno abbreviato (dom – sab).
"gggg" =TESTO("02/02/2005";"gggg") "mercoledì Visualizza il giorno per esteso (domenica – sabato)
Visualizza il mese come numero senza zero iniziale (1 – 12). Se m
"m" =TESTO("02/02/2005";"m") "2" è preceduto da h o hh, viene visualizzato il valore relativo ai
minuti anziché il mese.
Visualizza il mese come numero con zero iniziale (01 – 12). Se m
"mm" =TESTO("02/02/2005";"mm") "02" è preceduto da h o hh, viene visualizzato il valore relativo ai
minuti anziché il mese.
"mmm" =TESTO("02/02/2005";"mmm") "feb" Visualizza il mese abbreviato (gen – dic).
"mmmm" =TESTO("02/02/2005";"mmmm") "febbraio" Visualizza il nome per esteso del mese (gennaio – dicembre).
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

"mmmmm" =TESTO("02/02/2005";"mmmmm") "f" Visualizza la prima lettera del nome del mese (g – d).
aa =TESTO("02/02/2005";"aa") "05" Visualizza l'anno come numero di due cifre (00 – 99).
aaaa =TESTO("02/02/2005";"aaaa") "2005" Visualizza l'anno come numero di quattro cifre (100 – 9999).
ww =TESTO("02/02/2009";"ww") "6" Visualizza il numero della settimana (1 – 53). [solo in scalc]
h =TESTO("01.02.03";"h") "1" Visualizza l'ora come numero senza zero iniziale (0 – 23).
hh =TESTO("01:02:03";"hh") "01" Visualizza l'ora come numero con zero iniziale (00 – 23).
m =TESTO("01:02:03";"m") "2" Visualizza i minuti come numero senza zero iniziale (0 – 59).
mm =TESTO("01:02:03";"mm") "02" Visualizza i minuti come numero con zero iniziale (00 – 59).
s =TESTO("01:02:03";"s") "3" Visualizza i secondi come numero senza zero iniziale (0 – 59).
ss =TESTO("01:02:03";"ss") "03" Visualizza i secondi come numero con zero iniziale (00 – 59)
[mm] =TESTO("01:02:45";"[mm]") "62" Visualizza la stringa contenente il tempo trascorso in minuti
[ss] =TESTO("01:02:03";"[ss]") "3723" Visualizza la stringa contenente il tempo trascorso in secondi

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi

27 Possiamo combinare assieme le maschere appena presentate come negli esempi
seguenti (si osservi l'uso dello \ per indicare quando un carattere va preso così come
è e non deve essere interpretato come una codifica di formato!):
=TESTO("12/03/05";"""Ome"": gggg, g mmmm aaaa")
==> "Ome: sabato, 12 marzo 2005"
=TESTO("12/03/05 01.08.03";"O\m\e: gggg or\ario hh:mm")
==> "Ome: sabato orario 01:08"
=TESTO("12/03/05 01.08.03";"Ome: gggg orario hh:mm") ==>
"O32005: sabato or05rio 01:08"
Nella tabella sottostante sono elencate le specifiche relative ai formati di tipo
numerico:
Maschera di
Esempio Risultato Descrizione
formato
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Si osservi: un numero senza parte intera viene visualizzato con lo 0


"#.##0,00" =TESTO(0,005;"#.##0,00") 0,01 iniziale.
Se il numero di cifre decimali è superiore a quello indicato nella
=TESTO(1000,009;"#.###,00") 1.000,01 maschera di formato allora il numero viene arrotondato per difetto o
"#.###,00" eccesso a seconda.
Si osservi: un numero senza parte intera viene visualizzato senza lo 0
=TESTO(0,0049;"#.###,00") ,00 iniziale
Segnaposto di cifra. Visualizza una cifra o uno zero. Se il numero
passato come primo argomento contiene una cifra nella posizione in
00000 =TESTO(1;"00000") 00001 cui compare lo 0 nella stringa del formato allora tale cifra verrà
visualizzata; in caso contrario in tale posizione verrà visualizzato uno 0.
0,000E+00 =TESTO(1234,56;"0,000E+00") 1,235E+03 Mostra l'argomento in notazione esponenziale
Se voglio scrivere delle parole per evitare confusione con le sigle della
"#.##0 \L\i\r\e" =TESTO(1000,014;"#.##0
1.000 Lire maschera di formato devo racchiuderle tra "" "" oppure anteporre ad
"#.##0 ""Lire""" \L\i\r\e") ogni lettera della parola il carattere \

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


28
=VALORE(Argomento)
Converte ARGOMENTO (una stringa!) nel numero corrispondente. In caso la
conversione non sia possibile restituisce il codice di errore: #VALORE!
=VALORE("1,002") ==> 1,002
=VALORE("H2O") ==> #VALORE! (Err:502 in scalc)
=VALORE("18.00.00") ==> #VALORE! (0,75 in scalc)
=VALORE("18:00:00") ==> 0,75 (Err:502 in scalc)
=VALORE("01/01/1900") ==> 1 (in scalc 2)
=VALORE("31/12/1899") ==> #VALORE! (in scalc 1)
=VALORE("29/12/1899") ==> #VALORE! (in scalc -1)
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=ORARIO.VALORE(Argomento)
La funzione ORARIO.VALORE restituisce il numero seriale (usato internamente
da EXCEL per memorizzare i dati temporali!) associato alla stringa ARGOMENTO
intesa come orario.
=ORARIO.VALORE("01/01/1900") ==> 0 (Err:502 in scalc)
=ORARIO.VALORE("01/01/1900 18.00.00") ==> 0,75
=ORARIO.VALORE("01/01/2020 12:00:00") ==> 0,5
=ORARIO.VALORE("Ciao") ==> #VALORE! (Err:502 in scalc)
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
29
=DATA.VALORE(Argomento)
La funzione DATA.VALORE restituisce il numero seriale (usato internamente da EXCEL)
abbinato alla data, scritta come stringa (quindi racchiusa tra doppio apice "!), contenuto in
ARGOMENTO. Se ARGOMENTO non è una data valida restituisce #VALORE!. In altre
parole restituisce il numero di giorni passati a partire dalla data di riferimento del
31/12/1899 (il 30/12/1899 per scalc).
=DATA.VALORE("01/01/1900") ==> 1 (2 in scalc)
=DATA.VALORE("01/01/1900 12:00:00") ==> 1 (2 in scalc)
=DATA.VALORE("01/01/1900 18.00.00") ==> 1 (2 in scalc)
=DATA.VALORE(TESTO(OGGI();"G/M/AA")) ==> Nr gg dal 30/12/1899
ad oggi
=DATA.VALORE("Ciao") ==> #VALORE! (non è una data)
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

(Err:502 in scalc)
=DATA.VALORE("31/12/1899") ==> #VALORE! (1 in scalc)
=DATA.VALORE("29/12/1899") ==> #VALORE! (-1 in scalc)
=DATA.VALORE(21/10/2014) ==> #VALORE! (non è una stringa)
(Err:502 in scalc)
=DATA.VALORE("29/02/2014") ==> #VALORE! (non è bisestile)
(Err:502 in scalc)
=DATA.VALORE(OGGI()) ==> #VALORE! (OGGI() non restituisce una
stringa!)(Err:502 in scalc)
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
30
Formule cronologiche
OGGI, ADESSO, ORA, MINUTO, SECONDO, ANNO, MESE,
GIORNO.SETTIMANA, GIORNO, GIORNI

=OGGI()
Restituisce la data di oggi
=OGGI() ==> la data di oggi: esempio 25/12/2028
=OGGI()+1 ==> la data di domani: esempio 26/12/2028
=OGGI()-1 ==> la data di ieri: esempio 24/12/2028

=ADESSO()
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Restituisce la data e l'ora dell'istante attuale.


=ADESSO() ==> la data e l'ora attuale:
esempio 25/12/2028 23.21

=ORA(Argomento)
Restituisce l'ora dell'istante passato come ARGOMENTO.
=ORA("13:11:10") ==> 13
=ORA(0,75) ==> 18
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
31 =MINUTO(Argomento)
Restituisce i minuti dell'istante passato come ARGOMENTO.
=MINUTO("13:11:10") ==> 11
=MINUTO(0,76875) ==> 27 - (corrisponde alle 18.27)

=SECONDO(Argomento)
Restituisce i secondi dell'istante passato come ARGOMENTO.
=SECONDO("13:11:10") ==> 10

=ANNO(Argomento)
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Restituisce l'anno della data (espressa come stringa o come numero seriale) passata
come ARGOMENTO.
=ANNO("01/01/2019") ==> 2019
=ANNO(OGGI()) ==> anno corrente: esempio 2019
=ANNO(1) ==> 1900 - 1 corrisponde a 1/1/1900 in excel
(1899 in scalc poiché 1 corrisponde al
31/12/1899)
=ANNO("29/02/2015") ==> #VALORE! Non è bisestile
(anche in scalc)
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
32
=MESE(Argomento)
Restituisce il mese (in numero) della data passata come ARGOMENTO.
=MESE("01/11/2019") ==> 11
=MESE(OGGI()) ==> mese corrente: esempio 12
=MESE(1) ==> 1 - 1 corrisponde a 1/1/1900 in excel
(12 in scalc poiché 1 corrisponde al 31/12/1899)

=GIORNO.SETTIMANA(Argomento[;Tipo])
Restituisce il giorno della settimana (in numero!) della data passata come
ARGOMENTO. (1 ==> domenica, 2 ==> lunedì etc.).
=GIORNO.SETTIMANA("01/11/2009") ==> 1 (è domenica)
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=GIORNO.SETTIMANA("02/11/2009") ==> 2 (è lunedì)


La funzione GIORNO.SETTIMANA ha un 2° argomento (facoltativo!) che indica da
dove partire con la numerazione dei giorni della settimana come mostrato nella
tabella qui a lato. Se imposto come TIPO un valore non
presente nella tabella ottengo l'errore #NUM!. In scalc la
numerazione adottata si ferma al numero 3.

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


33
=GIORNO(Argomento)
Restituisce il giorno del mese (in numero!) della data passata come ARGOMENTO.
=GIORNO("01/11/2019") ==> 1
=GIORNO(OGGI()) ==> giorno corrente: esempio 31
=GIORNO(1) ==> 1 – in Excel 1 corrisponde a 1/1/1900
(31 in scalc poiché 1 corrisponde al
31/12/1899)

=GIORNI(Data1;Data2)
Restituisce il numero di giorni compresi tra due date passate come argomento.
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=GIORNI(OGGI();OGGI()-1) ==> 1
=GIORNI(OGGI();OGGI()+1) ==> -1
=GIORNI(OGGI();DATA.VALORE("01/01/"&ANNO(OGGI())))
==> Nr. Giorni trascorsi dall'inizio dell'anno ad oggi

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


34 Formule di test e controllo
SE, SE.ERRORE, E, O, VAL.ERRORE, VAL.ERR, VAL.NON.DISP,
VAL.NUMERO, VAL.VUOTO, VAL.TESTO,

=SE(Condizione;ValSeVero;ValSeFalso)
Restituisce il 2° parametro VALSEVERO se la CONDIZIONE è vera altrimenti il 3°
parametro VALSEFALSO.
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=SE( ; ; )

=SE(A1>0;"Valore positivo";"Valore non positivo")


==> Se A1 contiene un valore maggiore di zero
restituisce "Valore positivo" altrimenti
"Valore non positivo".


Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi



35 E' possibile inserire all'interno di una formula SE un ulteriore SE portando in
questo modo il numero di possibili risposte a tre.

2° argomento A

=SE(A1<=0;SE(A1<0;"Negativo";"Zero");"Positivo")
==> se A1 è > zero restituisce "Positivo", se
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

minore di zero "Negativo" altrimenti "Zero".

=SE.ERRORE(Argomento;ValoreSeErrore)
Restituisce VALORESEERRORE se ARGOMENTO genera un errore altrimenti ritorna
ARGOMENTO. Per ora non esiste in scalc. E' equivalente alla formula:
=SE(VAL.ERRORE(Argomento); ValoreSeErrore; Argomento)
=SE.ERRORE(A1/A2;"Divisione per zero") ==> Restituisce
l'avviso di errore se A2 contiene zero
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
36
=O(Condizione1[; Condizione2; ...])
Restituisce falso se tutte le condizionii sono false altrimenti vero.
=O(A1<0;A1>10;A2>20;A2<0) ==> Vero se (A1;A2) non è nel
rettangolo (0,0)-(10,20)
In Excel accetta 255 condizioni mentre in scalc ammette al massimo 30 argomenti.

=E(Condizione1[; Condizione2; ...])


Restituisce vero se tutte le condizionii sono vere altrimenti falso.
=E(A1>=0;A1<=10;A2<=20;A2>=0) ==> Vero se (A1;A2) è nel
rettangolo (0,0)-(10,20)
In Excel accetta 255 condizioni mentre in scalc ammette al massimo 30 argomenti.
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=VAL.ERRORE(Argomento)
Restituisce VERO quando ARGOMENTO è una di queste costanti di errore: #N/D,
#VALORE!, #RIF!, #DIV/0!, #NUM!, #NOME? o #NULLO!. In scalc abbiamo le
costanti di errore: Err:501 ... Err:527.
=VAL.ERRORE(1/0) ==> Vero (1/0 genera #DIV/0!)
=VAL.ERRORE(SOOMMA(1;2)) ==> Vero (soomma non esiste)
=VAL.ERRORE(SOMMA(1;2)) ==> Falso (la formula è corretta)
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
37
=VAL.ERR(Argomento)
Funzione identica a VAL.ERRORE() tranne che #N/D dove restituisce falso.
=VAL.ERRORE(#N/D) ==> Falso
=VAL.ERR(#RIF!) ==> Vero

=VAL.NON.DISP(Argomento)
Restituisce vero se l'argomento corrisponde alla costante di errore #N/D.
=VAL.NON.DISP(#N/D) ==> Vero

=VAL.NUMERO(Argomento)
Restituisce VERO se il parametro passato ARGOMENTO è un numero altrimenti
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

FALSO (anche quando l'argomento è un errore!).


=VAL.NUMERO("1,51") ==> Falso
=VAL.NUMERO("ciao") ==> Falso
=VAL.NUMERO(1,51) ==> Vero
=VAL.NUMERO(1/0) ==> Falso (l'argomento vale #DIV/0!)
=VAL.NUMERO(FISSO(1,32)) ==> Vero (FISSO restituisce
un valore testuale)
=VAL.NUMERO(TRONCA(1,32)) ==> Vero (TRONCA restituisce
un valore numerico)
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
38
=VAL.TESTO(Argomento)
Restituisce VERO se il parametro passato è tipo testuale altrimenti FALSO. Anche
quando la cella è vuota.
=VAL.TESTO("1,51") ==> Vero
=VAL.TESTO("ciao") ==> Vero
=VAL.TESTO(A1) ==> Falso se la cella A1 è vuota
=VAL.TESTO(1,51) ==> Falso
=VAL.TESTO(1/0) ==> Falso (l'argomento vale #DIV/0!)
=VAL.TESTO(FISSO(1,32)) ==> Vero (FISSO restituisce
un valore testuale)
=VAL.TESTO(TRONCA(1,32)) ==> Falso (TRONCA restituisce
un valore numerico)
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=VAL.VUOTO(Argomento)
Restituisce VERO se la cella indicata come argomento risulta vuota.
=VAL.VUOTO(A1) ==> Falso se A1 contiene qualcosa
(anche una formula come ="" o che va
in errore!) altrimenti Vero

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


39

Formule informative
AMBIENTE.INFO, CELLA , INDIRIZZO, INDIRETTO, INDICE

=AMBIENTE.INFO(InfoRichiesta) /
=INFO("Request")  in scalc
Restituisce delle informazioni relative all'ambiente su cui si sta operando.
=AMBIENTE.INFO("directory") ==> cartella contenente il
file di excel su cui stiamo lavorando (in scalc non
esiste un comando analogo)
=AMBIENTE.INFO("sistema") ==> restituisce "pcdos" se il
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

sistema operativo è WINDOWS "mac" se si tratta di un


MACINTOSH (in scalc equivale a =INFO("SYSTEM") ==> "WNT"
se Windows – "LINUX" se Linux – "SOLARIS" se Solaris)
=AMBIENTE.INFO("versione") ==> restituisce 16.0 se
stiamo usando Excel 2016, 15.0 con Excel 2013 - 14.0 con
Excel 2010 - 11.0 con Excel 2003 (In scalc è
=INFO("Version") oppure =INFO("Release") =>
412m3(Build:9782) con scalc 4.1.2)

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


40
=CELLA(InfoRichiesta; Riferimento)
Restituisce le informazioni richieste con il parametro INFORICHIESTA associate alla
cella RIFERIMENTO.
=CELLA("col";B7) ==> 2 (B è la 2° colonna)
=CELLA("riga";B7) ==> 7 (In scalc è =CELLA("row";B7) )
=CELLA("nomefile";A1) ==> restituisce il nome del foglio
completo: C:\documenti\[esercizio.xlsx]FoglioEsempi. (In
scalc è =CELLA("FileName";A1) e riporta il percorso nella
forma: 'file:///C:/documenti/esercizio.ods'#$FoglioEsempi)
=CELLA("Pioppo";A1) ==> se il parametro INFORICHIESTA è
errato restituisce l'errore #VALORE! (in scalc Err:502)
=CELLA("contenuto";B7) ==> visualizza il valore (non la
formula) della cella B7. (In scalc =CELLA("contents";B7))
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=CELLA("tipo";B7) mostra il tipo di contenuto nella cella B7


ovvero: l:label o testo; v:value o numero; b:blank o vuoto.
In scalc la formula corrispondente è =CELLA("type";A1)
Esempio:
=SE(CELLA("tipo";A1)="b";
"Cella vuota";
SE(CELLA("tipo";A1)="l";"Testo";"Numero")
)
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
41 =INDIRIZZO(Riga; Colonna
[;TipoRiferimento;Stile])
La funzione INDIRIZZO è utile per ottenere il riferimento di una cella di un foglio di
lavoro in base ai numeri di RIGA e di COLONNA specificati.
Il parametro TIPORIFERIMENTO è facoltativo. Specifica il tipo di riferimento da
restituire sulla base della seguente tabella:
TipoRiferimento Restituisce il seguente tipo di riferimento
1 (default) Assoluto – Esempio $A$1
2 Assoluto (riga), relativo (colonna) – Esempio A$1
3 Relativo (riga), assoluto (colonna) – Esempio $A1
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

4 Relativo – Esempio A1
Il parametro STILE è anch'esso facoltativo. Specifica lo stile di riferimento: A1 o
R1C1. Nello stile A1 le colonne vengono etichettate con caratteri alfabetici e le righe con
caratteri numerici. Nello stile di riferimento R1C1 le colonne e le righe vengono
entrambe etichettate con caratteri numerici. Se l'argomento Stile è VERO (1) o viene
omesso la funzione INDIRIZZO restituirà un riferimento di tipo A1. Se invece è FALSO
(0) restituirà un riferimento di tipo R1C1.


Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


42
Esempi:
=INDIRIZZO(2;3) ==> $C$2
=INDIRIZZO(2;3;1) ==> $C$2 (1 è il default)
=INDIRIZZO(2;3;2) ==> C$2
=INDIRIZZO(2;3;3) ==> $C2
=INDIRIZZO(2;3;4) ==> C2

=INDIRIZZO(2;3;1;FALSO) ==> R[2]C[3]


=INDIRIZZO(2;3;2;FALSO) ==> R2C[3]
=INDIRIZZO(2;3;3;FALSO) ==> R[2]C3
=INDIRIZZO(2;3;4,FALSO) ==> R2C3

=INDIRETTO(Riferimento)
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Restituisce il valore della cella indicata in RIFERIMENTO. Occorre però fare delle
precisazioni in merito all'argomento:
=INDIRETTO("A1") ==> contenuto di A1 (equivale a =A1)
=INDIRETTO(A1) ==> contenuto della cella indicata dentro
la cella A1 - ad esempio se A1 contiene B10 allora verrà
restituito il valore contenuto in B10
=INDIRETTO("A0") ==> #RIF! (in scalc Err:502)
=INDIRETTO(INDIRIZZO(1;1)) ==> equivalente a =A1
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
43 =INDICE(Matrice; R; C)
Restituisce il valore della cella che si trova nell'R-esima riga e C-esima colonna dell'area
indicata in MATRICE. Se R o C escono dalle dimensioni della MATRICE la funzione
restituisce l'errore #RIF!. Gli indici R e C partono da 1
=INDICE(A1:B7;2;1) ==> Valore nella cella A2
=INDICE(A1:B7;10;1) ==> #RIF! In scalc Err:502
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


44 Funzioni di ricerca
CERCA.VERT, CONFRONTA, CERCA, SCEGLI, CERCA.ORIZZ., RANGO.UG

=CERCA.VERT(ValoreCercato;Matrice;
ColonnaRestituita;
[RicercaNonEsatta])
Distinguiamo le 2 casistiche con RICERCANONESATTA uguale a FALSO e a VERO.
RICERCANONESATTA uguale a FALSO: (elenco ordinato e non)
La funzione CERCA.VERT ricerca sulla 1° colonna dell'area MATRICE la
corrispondenza esatta con VALORECERCATO e se la trova restituisce il contenuto della
cella situata sulla stessa riga e sulla colonna indicata in COLONNARESTITUITA.
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL


Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
45

Con RICERCANONESATTA pari a FALSO la funzione CERCA.VERT confronta
tutti gli elementi di MATRICE con il VALORECERCATO prima di stabilire se il dato
non è presente in elenco. Pertanto non è necessario ordinare MATRICE rispetto alla
1° colonna visto che la ricerca continua fino a quando non trovo un elemento
esattamente uguale a VALORECERCATO oppure quando arrivo in fondo all'elenco.
Quando VALORECERCATO non è presente in MATRICE CERCA.VERT restituisce
(sia con elenco ordinato oppure no) l'errore #N/D.
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

RICERCANONESATTA uguale a VERO: (elenco necessariamente ordinato)


Con RICERCANONESATTA pari a VERO l'elenco deve essere ordinato onde evitare
risultati imprevisti. Il valore di default, applicato quando ometto il 4° argomento, è
VERO

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
46

La funzione CERCA.VERT in questo caso restituisce il valore posto sulla colonna
indicata in COLONNARESTITUITA corrispondente all'ultima riga dove il valore sulla 1°
colonna è risultato minore o uguale a VALORECERCATO.
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

In questo caso il risultato è errato!


Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
47

Se VALORECERCATO risulta inferiore al primo elemento sulla 1° colonna dell'elenco
ordinato la funzione CERCA.VERT restituisce la costante di errore #N/D.

Se VALORECERCATO risulta superiore all'ultimo elemento sulla 1° colonna


dell'elenco ordinato la funzione CERCA.VERT restituisce un valore dell'ultima riga
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

che dipende da COLONNARESTITUITA.


Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
48

Non ha senso utilizzare la funzione CERCA.VERT con RICERCANONESATTA pari a
VERO quando l'elenco in MATRICE risulta non ordinato (rispetto alla 1° colonna!)
poiché i risultati sono talvolta errati o imprevedibili

Nell'esempio in figura ottengo un risultato errato


nonostante VALORECERCATO risulti realmente
presente in elenco.
Nell'esempio sottostante 2 risultati differenti difficilmente interpretabili.
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Quindi se l'elenco non è ordinato, per evitare risultati imprevisti, occorre impostare
TIPOCORRISPONDENZA a FALSO (corrispondenza esatta!).

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
49

TIPOCORRISPONDENZA impostato a VERO risulta utile quando voglio stabilire
l'appartenenza di VALORECERCATO ad un range preso da una sequenza di intervalli
consecutivi i cui estremi sinistri corrispondono ai valori contenuti nella prima colonna
(ordinata!) di MATRICE. Il caso classico è quello degli interessi a scalare. Ad ogni
fascia di capitale corrisponde una determinata percentuale di interessi. Vediamo un
esempio pratico:
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=CERCA.VERT(G4;B4:D12;3;VERO)
Con CERCA.VERT() determino il tasso corrispondente al capitale versato in modo
semplice evitando la complessità dell'equivalente soluzione con la funzione SE():
=SE(C<1000;4%;SE(C<2000;5%;SE(...;SE(C<8000;11%;12%) ...))
E' evidente che la presenza di molti tassi percentuale distinti costringe alla scrittura di
lunghe sequenze di SE(), una dentro l'altra.

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


50
=CONFRONTA(ValoreCercato;Vettore
[;TipoCorrispondenza])
La funzione CONFRONTA, quando TIPOCORRISPONDENZA è posto a zero, ricerca
VALORECERCATO in un intervallo di celle (VETTORE) e ne restituisce la sua
posizione relativa all'interno di tale intervallo. Se la ricerca fallisce restituisce l'errore
#N/D. La funzione non è case sensitive. Ecco un esempio:
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

TIPOCORRISPONDENZA è facoltativo. Può assumere i valori -1, 0 o 1. Questo


parametro specifica il modo in cui Excel confronta il VALORECERCATO con i valori
contenuti nel VETTORE. Il valore predefinito è 1.
Nella tabella della pagina successiva vengono illustrate le modalità di confronto in
base al valore dell'argomento TIPOCORRISPONDENZA.


Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


51

Tipo
Comportamento
Corrispondenza

1 CONFRONTA troverà il valore più grande che è minore o uguale al ValoreCercato. Per funzionare è necessario che
i valori nell'argomento Matrice siano disposti in ordine crescente.
(default)
CONFRONTA troverà il primo valore che corrisponde esattamente al ValoreCercato. I valori nell'argomento Matrice
0 possono essere disposti in qualsiasi ordine.
CONFRONTA troverà il valore più piccolo che è maggiore o uguale al valorecercato. Per funzionare è necessario
-1 che i valori dell'argomento matrice siano disposti in ordine decrescente.
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Se TIPOCORRISPONDENZA è uguale a 1 e VALORECERCATO è minore del valore più


basso in VETTOREDOVECERCARE allora la funzione restituisce il codice di errore #N/D.
Analogamente se TIPOCORRISPONDENZA è uguale a -1 e VALORECERCATO è
maggiore del valore più alto in VETTOREDOVECERCARE allora la funzione restituisce il
codice di errore #N/D

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
52

Se TIPOCORRISPONDENZA è uguale a 0 e VALORECERCATO è una stringa di testo,
sarà possibile utilizzare in VALORECERCATO i caratteri jolly, ovvero il punto
interrogativo (?) e l'asterisco (*). Il punto interrogativo ? e l'asterisco * identificano
rispettivamente un carattere singolo (non quello vuoto!) e una sequenza di caratteri
qualsiasi (anche quella vuota). Se si desidera trovare proprio il punto interrogativo o
l'asterisco, occorre digitare una tilde ~ (alt+126) prima del carattere.
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


53 =CERCA(ValoreCercato;VettoreDoveCercare;
[VettoreDoveEstrarre])
La funzione CERCA risulta utile quando la ricerca si svolge su una sola riga o una
sola colonna altrimenti è preferibile utilizzare CERCA.VERT o CERCA.ORIZZ a
seconda. Possiede 2 sintassi: "Vettore" e "Matrice". La sintassi matriciale è stata
implementata solo per compatibilità ed è consigliabile utilizzare in alternativa le
funzioni migliorate CERCA.VERT o CERCA.ORIZZ .
Nella sintassi "Vettore" la funzione CERCA prevede i seguenti argomenti:
- VALORECERCATO  Obbligatorio. E' il valore che viene cercato nel 2°
argomento VETTOREDOVECERCARE. VALORECERCATO può essere un
numero, un testo, un valore logico oppure un nome o un riferimento.
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

- VETTOREDOVECERCARE  Obbligatorio. Rappresenta l'intervallo di ricerca


contenente solo una riga o una colonna. I valori in VETTOREDOVECERCARE
possono essere testo, numeri o valori logici.
Importante! È necessario che i valori in VETTOREDOVECERCARE siano ordinati
in modo crescente. In caso contrario, CERCA potrebbe restituire risultati errati.
La funzione non distingue tra lettere maiuscole e minuscole (non è case
sensitive!).


Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


54 
- VETTORERISULTATO  Facoltativo. Intervallo (ha la stessa dimensione di
VETTOREDOVECERCARE!) composto da una sola riga o colonna dove viene
estratto il risultato corrispondente al contenuto della cella posta nella stessa
posizione dell'elemento di VETTOREDOVECERCARE e che rappresenta il risultato
della ricerca.
Se la funzione CERCA non riesce a trovare il VALORECERCATO, utilizzerà il valore più
alto in VETTOREDOVECERCARE che sia minore o uguale del VALORECERCATO (A).
Se VALORECERCATO è minore del valore più basso in VETTOREDOVECERCARE allora
la funzione restituisce il codice di errore #N/D (B).
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

(A) (B)

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


55 =SCEGLI(Posizione;Valore1 [,… , Valore254])
La funzione SCEGLI utilizza il parametro POSIZIONE per restituire il valore preso
dall'elenco degli argomenti VALOREi che occupa la POSIZIONE i indicata. Il
numero massimo di valori ammessi in Excel 2016 è 254 (in scalc è 30). Se la
POSIZIONE è maggiore del numero di valori in elenco la funzione restituisce
#VALORE!.
Esempio:
=SCEGLI(3;"A";"B";"C";"D";"E";"F";"G") ==> "C"
=SCEGLI(10;"A";"B";"C") ==> #VALORE!
=SCEGLI(CASUALE.TRA(1;4);"1";"1";"1";"2") ==> Genera
un numero 1 o 2 dove 1 ha una frequenza di uscita
(75%) 3 volte maggiore di quella del 2 (25%)
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=CERCA.ORIZZ(ValoreCercato;Matrice;
RigaRestituita;
[RicercaNonEsatta])
La funzione CERCA.ORIZZ è analoga a CERCA.VERT solo che la ricerca viene
fatta sulla prima riga di MATRICE e non sulla prima colonna.

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
56

Come in CERCA.VERT distinguiamo le 2 casistiche con RICERCANONESATTA uguale
a FALSO e a VERO.
Con RICERCANONESATTA uguale a FALSO non è necessario ordinare l'elenco. In
questo caso la funzione CERCA.ORIZZ ricerca sulla 1° riga dell'area MATRICE la
corrispondenza esatta con VALORECERCATO e se la trova restituisce il contenuto
della cella situata sulla stessa colonna e sulla riga indicata in RIGARESTITUITA.
Con RICERCANONESATTA uguale a VERO l'elenco deve essere ordinato onde
evitare risultati imprevisti. Il valore di default, applicato quando ometto
l'argomento, è VERO. La funzione CERCA.ORIZZ in questo caso restituisce il
valore posto sulla riga indicata in RIGARESTITUITA corrispondente all'ultima
colonna dove il valore sulla 1° riga è risultato minore o uguale a VALORECERCATO.
Come per CERCA.VERT quando l'elenco non è ordinato, per evitare risultati imprevisti,
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

occorre impostare TIPOCORRISPONDENZA a FALSO (corrispondenza esatta!).


TIPOCORRISPONDENZA impostato a VERO risulta utile quando voglio stabilire
l'appartenenza di VALORECERCATO ad un range preso da una sequenza di intervalli
consecutivi i cui estremi sinistri corrispondono ai valori contenuti nella prima riga
(ordinata!) di MATRICE.
Vediamo questo esempio: determinare la stagione associata alla data generata
casualmente con la formula =CASUALE.TRA(1;OGGI()).

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
57

Nella determinazione della stagione l'anno è ininfluente. Dobbiamo quindi costruire
una codifica della data che elimini tale informazione ma al tempo stesso mantenga la
compatibilità con l'ordinamento cronologico. Iniziamo quindi a trasformare la data in
una stringa composta dai numeri corrispondenti al mese e al giorno. Utilizziamo a tale
scopo la funzione: =TESTO(B1;"mmgg").
Questa codifica testuale "stringa"data garantisce, quando 2 date appartengono allo
stesso anno solare, la seguente relazione:

"stringa"data1 < "stringa"data2 data1< data2


In altre parole questa codifica (che elimina l'anno!) fa si che l'ordinamento tipico delle
stringhe (alfanumerico) risulti compatibile con quello cronologico.
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL


Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
58

Possiamo ora applicare la ricerca per intervalli tipica del CERCA.ORIZZ quando il 4°
argomento è posto a VERO (oppure è omesso). Con questo parametro il CERCA.ORIZZ
restituisce il valore posto sulla seconda riga (nome stagione) corrispondente all'ultima
colonna dove il valore sulla 1° riga è risultato minore o uguale alla codifica testuale
appena illustrata applicata alla data in C5 (ovvero restituisce la colonna con la codifica
della data di inizio della stagione corrispondente alla data generata).
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Si poteva risolvere l'esempio anche con la formula =MESE(C5)*100+GIORNO(C5).


Questa codifica numerica Interodata garantisce, quando 2 date appartengono allo stesso
anno solare, la seguente relazione:

Interodata1 < Interodata2 data1< data2


In altre parole questa codifica (che elimina l'anno!) fa si che l'ordinamento numerico
risulti compatibile con quello cronologico.

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
59


Possiamo ora applicare la ricerca per intervalli tipica del CERCA.ORIZZ quando il 4°
argomento è posto a VERO (oppure è omesso). Con questo parametro il
CERCA.ORIZZ restituisce il valore posto sulla seconda riga (nome stagione)
corrispondente all'ultima colonna dove il valore sulla 1° riga è risultato minore o
uguale alla codifica numerica appena illustrata applicata alla data in C5 (ovvero
restituisce la colonna con la codifica della data di inizio della stagione corrispondente
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

alla data generata).

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


60
=RANGO.UG(Num;Area[;TipoOrdine])
La funzione RANGO.UG restituisce il numero associato alla posizione di NUM all'interno
dell'elenco dei numeri, riordinato secondo il parametro TIPOORDINE, prelevati dai
contenuti in AREA. Rappresenta quindi la classifica di NUM rispetto agli altri valori della
serie. I valori che non sono numerici vengono ignorati. TIPOORDINE pari a 1 indica un
ordinamento crescente, zero (che è il default) decrescente.

Se il valore NUM non è presente in AREA la funzione restituisce l'errore #N/D.


Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Nella versione Excel 2010 il nome della funzione era RANGO. La funzione RANGO è
comunque ancora disponibile nella versione di Excel 2016 per ragione di compatibilità.
Anche in scalc la funzione si chiama RANGO. Nel caso il valore NUM non esista in AREA
scalc restituisce l'errore #VALORE!.


Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


61

Esiste anche la funzione RANGO.MEDIA(Num;Area[;TipoOrdine]). Restituisce
il numero associato alla posizione di NUM all'interno dell'elenco dei numeri (riordinato
secondo il parametro TIPOORDINE) prelevati dai contenuti in AREA. Se NUM è
presente più volte in AREA allora RANGO.MEDIA restituisce la media delle sue
posizioni in elenco.
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


62 Formule matriciali
Costanti matriciali, MATRICE.PRODOTTO, MATR.SOMMA.PRODOTTO,
MATR.TRASPOSTA , MATR.INVERSA, MATR.DETERM
Le formule matriciali (ad esempio: MATR.PRODOTTO) devono essere inserite in
questo modo (anche in scalc e Mac!):
Seleziono l'area relativa alla
matrice che dovrà contenere la
formula in forma matriciale

Inizio a digitare la formula


Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Confermo premendo la
combinazione di tasti
ctrl+shift+invio

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


63
Quindi per confermare le formule in forma matriciale, anziché usare Invio, si utilizza
la combinazione Ctrl+Shift+Invio. Quando si preme Ctrl+Shift+Invio, la formula viene
racchiusa tra parentesi graffe {} e in ogni cella dell'intervallo selezionato viene inserita
un'istanza della formula digitata.
Una formula in forma matriciale consente di eseguire calcoli algebrici multipli tra
elementi situati nella medesima posizione in due o più matrici.
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Ctrl+shift+invio

Le formule matriciali sono un modo molto efficace per semplificare la scrittura di una
formula molto complessa. Ad esempio la formula matriciale seguente
{=SOMMA(C1:C8*D1:D8)}
equivale a questa:
=SOMMA(C1*D1;C2*D2;C3*D3;C4*D4;C5*D5;C6*D6;C7*D7;C8*D8)
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
Se scrivo la formula =SOMMA(C2:C10*D2:D10) e premo Invio per confermare ottengo
64 l'errore #VALORE! poiché la scrittura C2:C10*D2:D10 è una sintassi applicabile solo
alla forma matriciale.
Non è possibile sovrascrivere un singolo elemento
di una formula matriciale che si estende su un'area
composta da più celle.

Per modificare una formula


in forma di matrice basta Per visualizzare le celle utilizzate
da una formula si utilizza il ribbon
selezionare l'area e "Formule" e poi si clicca sulla voce
"Individua precedenti".
premere successivamente
il tasto F2.
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Quando le aree della formula


matriciale non presentano la
medesima dimensione si
verifica l'errore #N/D nelle
celle che si riferiscono a
posizioni che non hanno un Ctrl+shift+invio

corrispondente in tutte le
matrici coinvolte nel calcolo.
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
Le costanti matriciali sono una componente delle formule in forma di matrice. Vengono
65
create racchiudendo l'elenco dei valori tra parentesi graffe {} (digitate manualmente!). Gli
elementi che nella matrice sono posti sulla stessa riga vengono separati con lo \ mentre
ogni riga viene separata con il singolo punto. In scalc le costanti matriciali vanno scritte in
questo modo: ={1;2;3|4;5;6|7;8;9} quindi ; è il separatore di colonna mentre | è il
separatore di riga. In Excel per Apple la costante matriciale va scritta in questo modo:
={1\2\3;4\5\6;7\8\9}
={1\2\3.4\5\6.7\8\9}

E' possibile assegnare un nome alle costanti matriciali mediante il bottone "Gestione nomi"
nel ribbon "Formule".
Basta digitare (si osservi il . come separatore!)
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

={"Gennaio"."Febbraio"."Marzo"}
e confermare con "OK":

Per utilizzare il nome Trimestre basta selezionare


3 celle e digitare "=Trimestre" e successivamente
confermare con ctrl-shift-invio.

Ctrl+shift+invio

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


66
=MATR.PRODOTTO(MatriceA;MatriceB)
Restituisce il prodotto di due matrici A e B. Il risultato è una matrice con lo stesso numero
di righe RA di MatriceA e lo stesso numero di colonne CB di MatriceB.
=MATR.PRODOTTO(B2:C4;E2:H3)
==> Matrice prodotto

Attenzione: il numero di colonne CA della matriceA deve essere uguale al numero di


righe RB della matriceB ed entrambe le matrici devono contenere solo numeri (ne celle
vuote ne testo!) altrimenti la formula restituisce l'errore #VALORE!.
MatriceA e MatriceB possono essere specificate come: 1) intervalli di celle A1:A9,
2) costanti matriciali ={1\2\3.4\5\6.7\8\9} 3) riferimenti mnemonici
(=Trimestre).
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

La matrice prodotto ha dimensione RAxCB ed è composta dai seguenti elementi pr,c

, , ,

Esempio:
=MATR.PRODOTTO({1\2.3\4};{1\2.3\4}) ==> prodotto matrice 2x2
(in scalc si scrive: =MATR.PRODOTTO({1;2|3;4};{1;2|3;4}) )

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


67
=MATR.SOMMA.PRODOTTO(Matrice1[;Matrice2
… ; Matrice254])
Moltiplica gli elementi che risultano nella stessa posizione (riga r, colonna c) delle matrici
specificate e restituisce un numero scalare corrispondente alla somma di tutti questi
prodotti.
Esempio: =MATR.SOMMA.PRODOTTO(B2:D4;F2:H4;J2:L4;N2:P4)

Attenzione: le matrici devono avere tutte la stessa dimensione NxM. In caso contrario
MATR.SOMMA.PRODOTTO restituisce l'errore #VALORE!. Elementi non numerici delle
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

matrici vengono interpretati come zeri.


Il risultato è un numero e non una matrice (pertanto basta premere invio per confermare
la formula!).

, ,

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


68
=MATR.TRASPOSTA(Matrice)
La funzione MATR.TRASPOSTA restituisce la matrice trasposta della MATRICE
argomento (trasforma le colonne in righe e viceversa). Deve essere immessa come
formula matriciale (quindi con ctrl+shift+invio) in un'area di celle la cui dimensione NxM
deve corrispondere alla dimensione trasposta MxN della MATRICE argomento.

La funzione MATR.TRASPOSTA risulta utile per cambiare l'orientamento da verticale a


orizzontale (e viceversa) di un intervallo di celle.
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=MATR.INVERSA(Matrice)
Restituisce l'inversa della MATRICE con un grado
di precisione fino alla 18-esima cifra decimale.
L'argomento deve essere una matrice quadrata.
Attenzione: se la MATRICE contiene elementi non numerici (celle vuote o testo) oppure
non è quadrata la funzione MATR.INVERSA restituisce l'errore #VALORE!.

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


69
=MATR.DETERM(Matrice)
Restituisce il determinante della MATRICE con un grado di precisione di circa 16 cifre
decimali. L'argomento deve essere una matrice quadrata.
Attenzione: come per la MATR.INVERSA quando la MATRICE contiene elementi non
numerici (celle vuote o testo) oppure non è quadrata restituisce l'errore #VALORE!. Il
determinante viene cosi definito:
Determinante matrice 1x1 – E' l'elemento stesso a1,1.

Determinante matrice 2x2 – a1,1*a2,2-a1,2*a2,1

Determinante matrice 3x3 –


Il volume di questo
a1,1*(a2,2*a3,3-a2,3*a3,2)-
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

parallelepipedo è il valore
a1,2*(a2,1*a3,3-a2,3*a3,1)- assoluto del determinante
della matrice 3×3 formata
a1,3*(a2,1*a3,2-a2,2*a3,1)- dai 3 vettori r1 ,r2 e r3.

Determinante
matrice 4x4

Le matrici inverse e i determinanti, vengono in genere utilizzate per la risoluzione di


sistemi di equazioni matematiche che comprendono diverse variabili. Il determinante
misura il volume del parallelepipedo generato dai vettori colonna della matrice.

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


70
Funzioni Notazione
BINARIO.DECIMALE, BINARIO.HEX, HEX.DECIMALE, HEX.BINARIO,
DECIMALE.BINARIO, DECIMALE.HEX, BIT.SPOSTA.DX, BIT.SPOSTA.SX

=BINARIO.DECIMALE(BINARIOCOMP2)
Converte la notazione binaria in complemento a 2 nel numero corrispondente in base. Il
parametro BINARIOCOMP2 può avere al massimo 10 bit (dove il decimo è quello del
segno). Se digito più di 10 bit la funzione restituisce l'errore #NUM!
=BINARIO.DECIMALE(111) ==> 7
=BINARIO.DECIMALE(1000000001) ==> -511
=BINARIO.DECIMALE(1111111110) ==> -2
=BINARIO.DECIMALE(10000000001) ==> #NUM! (Err:502 in scalc)
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=BINARIO.HEX(BINARIOCOMP2)
Converte la notazione binaria in complemento a 2 nel numero corrispondente in base
16. Il parametro BINARIOCOMP2 può avere al massimo 10 bit (dove il decimo è quello
del segno). Se digito più di 10 bit la funzione restituisce l'errore #NUM!
=BINARIO.HEX(11111) ==> 1F (0001 1111)
=BINARIO.HEX(1000000000) ==> FFFFFFFE00 (1110 0000 0000)
=BINARIO.HEX(1111111110) ==> FFFFFFFFFE (1111 1111 1110)
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
71 =HEX.DECIMALE(STRNUMEROHEX)
Converte un intero in notazione esadecimale, composto al massimo da 10 digit, nel
corrispondente numero in base 10. I numeri negativi vengono rappresentati in
complemento a 16. L'intervallo di rappresentazione è [-239,239-1] ovvero da
8000000000 a 7FFFFFFFFF. Se il parametro STRNUMEROHEX è composto da più di
10 digit la funzione restituisce l'errore #NUM!.
=HEX.DECIMALE("ADA") ==> 2778 (10∙162+13∙161+10∙160)
=HEX.DECIMALE("FFFFFFFFFE") ==> -2
=HEX.DECIMALE("8000000000") ==> -239 (-8∙169=-23∙(24)9)
=HEX.DECIMALE("7FFFFFFFFF") ==> 239-1 (8000000000-1 in hex)

=HEX.BINARIO(STRNUMEROHEX[;CIFRE])
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Converte un intero in notazione esadecimale, composto al massimo da 10 digit, nel


corrispondente numero binario in complemento a 2 a 40 bit (di cui il primo è per il
segno). Se il numero STRNUMEROHEX è negativo CIFRE verrà ignorato. L'intervallo di
rappresentazione è [-29,29-1] ovvero da FFFFFFFE00 … FFFFFFFFFF … 0 … 1FF.
=HEX.BINARIO("1FF";10) ==> 01 1111 1111 (+511 = 29-1)
=HEX.BINARIO("FFFFFFFE00") ==> 10 0000 0000 (-512 = -29)
=HEX.BINARIO("FFFFFFFFFF") ==> 11 1111 1111 (-1 = -512+511)
=HEX.BINARIO("FFFFFFFD00") ==> #NUM! (Err:502 in scalc)
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
72
=DECIMALE.BINARIO(NUMERO[;CIFRE])
Converte un intero in base 10 compreso tra -512 e 511 ([-29,29-1]) in notazione binaria in
complemento a 2. CIFRE è opzionale (deve essere al massimo 10) e consente di
aggiungere degli zeri iniziali quando il risultato ha poche cifre. Se il NUMERO è esterno
all'intervallo [-29;29-1] oppure cifre è insufficiente allora la funzione restituisce l'errore
#NUM!
=DECIMALE.BINARIO(7;8) ==> 00000111
=DECIMALE.BINARIO(-512) ==> 1000000000
=DECIMALE.BINARIO(511) ==> 111111111
=DECIMALE.BINARIO(1;11) ==> #NUM! (Cifre deve essere <11!)

=DECIMALE.HEX(NUMERO[;CIFRE])
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Converte un intero, scritto in notazione decimale, compreso tra -239 e 239-1 nel
corrispondente numero in notazione esadecimale composto al più da 10 digit (per cui sono
richiesti 39 bit + 1 per il segno). I numeri negativi vengono rappresentati in complemento a
16. CIFRE è opzionale (deve essere al massimo 10) e consente di aggiungere degli zeri
iniziali quando il risultato ha poche cifre. Se il parametro NUMERO è esterno all'intervallo [-
239,239-1] o il numero di cifre è insufficiente la funzione restituisce l'errore #NUM!
=DECIMALE.HEX(17;1) ==> #NUM! (richiede 2 digit!)
=DECIMALE.HEX(POTENZA(2;39)) ==> #NUM! (out of range)
=DECIMALE.HEX(POTENZA(2;39)-1)) ==> 7FFFFFFFFF
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
73 =BIT.SPOSTA.DX(NUMERO10[;NBITSPOSTATI])
=BIT.SPOSTA.SX(NUMERO10[;NBITSPOSTATI])
Restituisce un valore in base 10 ottenuto scorrendo la rappresentazione binaria di
NUMERO10 (espresso in base 10) di NBITSPOSTATI bit a destra o a sinistra a seconda
della funzione utilizzata.
NUMERO10 deve essere un valore appartenente all'intervallo [0,248-1] altrimenti
restituisce l'errore #NUM!. Le due formule sottostanti sono equivalenti
=BIT.SPOSTA.SX(X;N) e =BIT.SPOSTA.DX(X;-N)
Valori NUMERO10 non numerici determinano l'errore #VALORE!. Se il modulo di
NBITSPOSTATI è maggiore di 53 ottengo l'errore #NUM! . In scalc queste funzioni
non esistono in modo nativo.
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=BIT.SPOSTA.SX(7;3) ==> 56 (111<<3 = 111000)


=BIT.SPOSTA.DX(16;2) ==> 4 (10000>>2 = 100)
=BIT.SPOSTA.SX(7;54) ==> #NUM!
=BIT.SPOSTA.SX("ADA";3) ==> #VALORE!

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


74
Funzioni Finanziarie
RATA, INTERESSE

=RATA(Tasso;NrPeriodi;Capitale[;Saldo]
[;Tipo])
Restituisce l'importo della rata costante associata ad una rendita di TIPO (0 od omesso
se posticipato, 1 se anticipato), con tasso periodale TASSO (T Nr. rate
annuali), numero totale di rate NRPERIODI (Nr. anni Nr. rate annuali), valore attuale
CAPITALE e valore futuro (importo che si desidera raggiungere dopo aver effettuato
l'ultimo pagamento) SALDO. Se il saldo viene omesso il suo valore predefinito è 0. Le
formule sottostanti evidenziano il calcolo per determinare la rata e l'equivalente formula
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

in Excel.

=RATA(iperiodo;NrTotalePeriodi;Capitale;0;0)

=RATA(iperiodo;NrTotalePeriodi;Capitale;0;1)

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


75

Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL
Vediamo un esempio:

=INTERESSI(Tasso;Periodo;NrPeriodi;
Capitale[;Saldo][;Tipo])
Restituisce l'importo degli interessi relativi di un determinato PERIODO di una rendita a
rata costante di TIPO (0 od omesso se posticipato, 1 se anticipato), con tasso periodale
TASSO (T Nr. rate annuali), numero totale di rate NRPERIODI (Nr.
anni Nr. rate annuali), valore attuale CAPITALE e valore futuro (importo che si
desidera raggiungere dopo aver effettuato l'ultimo pagamento) SALDO.
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
76

Le formule sottostanti evidenziano il calcolo per determinare la rata e l'equivalente
formula in Excel.

=INTERESSI(iperiodo;NrPeriodi;Capitale;0;Tipo)
Vediamo un esempio:
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

Riferimenti formule (dal sito: http://www.apav.it/aa04-05/matecostondinighiraldini/RENDITE.pdf)

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


77
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

APPROFONDIMENTI

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


APPROFONDIMENTO 1: Costanti di errore
78
 #NOME? - Riferimento inesistente o nome di funzione errato. Esempio:
=soma(A1:A3) al posto di =somma(A1:A3) oppure =Ciao senza aver definito
il nome Ciao (In scalc la costante è identica e corrisponde al codice Err:525. I
codice di errore di scalc possono essere ricavati con la funzione
=ERRORE.TIPO())
 #DIV/0! - divisione per zero. Ad esempio: =1/0. (uguale in scalc - Err:532)
 ####### - il valore nella cella è più lungo di quanto la colonna permetta di
visualizzare (in scalc visualizza solo 3 #).
 #VALORE! - la formula ha un valore incompatibile. Esempio: =1+"A" (uguale in
scalc - Err:519)
 #NULL! - Questo errore viene visualizzato quando si specifica un'intersezione tra
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

due aree che non si intersecano. L'operatore di intersezione è uno spazio posto tra i
2 riferimenti. Esempio: =somma(A1:B3 C1:C3). (In scalc non esiste l'operatore
intersezione!).
 #RIF! – Viene prodotto quando ho un riferimento errato. Esempio:
=INDIRETTO("A0") . In scalc restituisce Err:502 ("argomento non valido")
 #NUM! – Questo errore indica che una formula contiene valori numerici non validi
o che determinano un overflow. Ad esempio: =0^0 (in scalc non genera alcun
errore ma restituisce il valore 1), =RADQ(-1) (in scalc restituisce Err:502) o
=123456789012345^400 (in scalc restituisce #NUM! - Err:503) .

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


 #N/D – Una funzione di ricerca (CERCA, CERCA.VERT, CERCA.ORIZZ o
79 CONFRONTA) non ha individuato un valore compatibile con quello indicato nel 1°
argomento. Ad esempio quando la funzione CERCA(valore;vettore) non riesce a
trovare in VETTORE il VALORE cercato restituisce l'elemento più alto di VETTORE che
risulta ≤ di VALORE. Se VALORE è minore del minimo valore in VETTORE allora
CERCA restituisce #N/D. Esempi:
=CERCA("A";{"B";"C";"D"}) (in excel 2003 e scalc)
=CERCA("A";{"B"\"C"\"D"}) (in excel 2016).
Una funzione utile per la gestione degli errori è ERRORE.TIPO.

=ERRORE.TIPO(COSTANTEERRORE)
Restituisce il numero corrispondente al codice di errore passato come argomento oppure
restituisce #N/D se non vi è alcun errore. È possibile utilizzare la funzione ERRORE.TIPO
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

(in combinazione con SE.ERRORE() e SCEGLI()) per restituire una stringa di testo più
esplicativa rispetto al codice di errore. In scalc i codici restituiti sono completamente
differenti.
=SE.ERRORE(SCEGLI(ERRORE.TIPO(B2);
"1 ->NULLO";"2 ->DIVISIONE PER 0";
"3 ->VALORE INCOMPATIBILE";"4 ->RIFERIMENTO ERRATO";
"5 ->NOME INESISTENTE";"6 ->VALORE NUMERICO NON AMMESSO";
"7 ->NON TROVATO";"8 ->ESTRAZIONE DATI IN CORSO!");
"NESSUN ERRORE!")
Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi
80
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

AGGIORNAMENTI

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


=CONTA.PIU.SE(AreaDaValutare1;
81
Condizione1[; AreaDaValutare2;
Relazione2;...])
La funzione CONTA.PIÙ.SE conta le righe dove le celle di tutte le aree
AreaDaValutare1, AreaDaValutare2, ... soddisfano le rispettive relazioni indicate nei
criteri Condizione1, Condizione2, ... . Le aree AreaDaValutarei devono avere
tutte lo stesso numero di righe e colonne. Non serve quindi che le aree siano adiacenti!
Quindi se tutte le 1° celle delle aree MatriceDatii soddisfano il criterio associato
Relazionei allora il risultato restituito dalla funzione CONTA.PIÙ.SE viene
incrementato di 1 altrimenti no. Ripeto lo stesso procedimento anche per le 2° celle, le 3°
celle e così via finché non sono state valutate tutte le celle delle aree MatriceDatii. In
scalc 4.1 questa funzione non esiste. Vediamo un esempio
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

=CONTA.PIÙ.SE(A1:A5;"X";C1:C5;"Y")
==> Conta le righe da 1 a 5 che hanno
nella colonna A il valore "X" e contem-
poraneamente "Y" nella colonna C.

=CONTA.PIU.SE(A1:B4;"<100";D2:E5;">20";G3:H6;"X")
==> Conta le posizioni corrispondenti
delle 3 aree i cui valori risultano
contemporaneamente <100 nella 1° area,
>20 nella 2° e pari a "X" nella 3°.

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi


82
=SOMMA.PIÙ.SE(AreaSomma;AreaDaValutare1
;Condizione1[; AreaDaValutare2;
Condizione2;...])
La funzione SOMMA.PIÙ.SE somma le celle di AreaSomma che occupano la medesima
posizione delle celle delle aree AreaDaValutare1, AreaDaValutare2, ... che
soddisfano le rispettive relazioni indicate nei criteri Condizione1, Condizione2, ... .
Le aree AreaSomma ed ogni AreaDaValutarei devono avere lo stesso numero di righe
e colonne. Non è quindi necessario che le aree siano adiacenti!

Quindi se tutte le celle che occupano la j-esima riga delle aree AreaDaValutarei
soddisfano il criterio corrispondente Condizionei allora il valore nella cella che si trova
sulla j-esima riga dell'AreaSomma verrà considerato nella somma finale restituita da
Corso di Microsoft EXCEL – Formulario Funzioni di EXCEL

questa funzione. Vediamo un esempio

=SOMMA.PIÙ.SE(B1:B7;D1:D7;"X";F1:F7;"Y")
==> Somma le righe da 1 a 7 dell'area
B1:B7 che hanno nell'area D1:D7 il
valore "X" e contemporaneamente "Y"
nell'area F1:F7.

Supporto I - DM66 – Microsoft EXCEL: Formulario Funzioni Istruttore: Marco Sechi

Potrebbero piacerti anche