Documente Academic
Documente Profesional
Documente Cultură
22 de functii in Excel
cu exemple si explicatii
powered by
Arsenal de ExcelNinja | 2
Cuprins
Introducere ...................................................................................................................... 3
Ce sunt formulele de fapt ................................................................................................ 4
Tasta F4 in Excel............................................................................................................... 7
Functii aritmetice de baza: SUM, AVERAGE, COUNT, MIN, MAX .................................. 10
Functii aritmetice conditionale: COUNTIF, SUMIF, AVERAGEIF, SUMIFS ...................... 13
Functii gestionare text: PROPER, LEFT, RIGHT, SEARCH, LEN, CONCATENATE ............. 18
Functii logice: IF, AND, OR ............................................................................................. 21
Functii de cautare: VLOOKUP ........................................................................................ 24
Functii de cautare: INDEX, MATCH ................................................................................ 27
Alte functii: IFERROR...................................................................................................... 30
Autor .............................................................................................................................. 32
Arsenal de ExcelNinja | 3
Introducere
Salut
Numele meu e Radu si ma bucur ca ai ales ca sa investesti intr-un lucru
important, in dezvoltarea ta personala.
Am creat acest eBook pentru a te ajuta sa stapanesti cele mai utile functii
din Excel (parerea mea). Nu am facut o enciclopedie a functiilor dintr-un motiv simplu,
vreau sa fie persoane care sa parcurga continutul pana la capat.
Arsenal de ExcelNinja | 4
Arsenal de ExcelNinja | 5
Radu, caut o functie care sa imi faca media dintre anumite valori dar
nu mai stiu cum se numeste, parca incepe cu av, cum fac sa o gasesc?
Foarte buna intrebarea, avem mai multe posibilitati:
1. Scriem =av intr-o celula si vedem ca apar cateva variante
Arsenal de ExcelNinja | 6
3. Dupa un click pe F(x) vedem imaginea de mai jos, scriem ce vrem sa facem si Excel
ne da o solutie
Bun, cred ca am vorbit destul despre formule la modul general, haideti sa trecem la
exemple.
Mai sus poti vedea un exemplu al unei functii. VLOOKUP, ca si multe alte functii, are mai
multe argumente (lookup value, table array, etc.). Separarea dintre argumente se face
la mine prin ,(virgula) pentru ca laptop-ul meu e setat pe limba engleza. La tine
separarea e posibil sa se faca prin ;(punct si virgula). Ca sa stii sigur iti recomand sa scrii
o formula si sa vezi prin ce sunt separate argumentele la tine.
Asta ca sa stii de ce iti apar erori la formulele scrise de mine.
Arsenal de ExcelNinja | 7
Tasta F4 in Excel
Un lucru pe care probabil il folosesti in Excel e multiplicarea formulelor. In acest capitol
vom incerca sa deslusim taina dupa care Excel ne multiplica formulele atunci cand
tragem in jos de coltul din dreapta jos a unei celule (vezi imaginea de mai jos).
Luam imaginea de mai sus ca si exemplu. Avem 2 coloane asupra carora vrem sa facem
urmatoarele operatii:
A+B
A+B2 (adaugam la coloana A valoarea din B2)
A2+B (adaugam la coloana B valoarea din A2)
A2+B2 (facem suma dintre A2 si B2 pe toata coloana)
A+B
Dupa ce scriem pe prima coloana formula foarte complicata
A2+B2, dupa ce multiplicam formula vom vedea ca
formulele din tabel arata ca si in imaginea alaturata.
Probabil ca acest scenariu e cel mai comun dar si cel mai
facil.
Arsenal de ExcelNinja | 8
A+B2
Aici lucrurile se complica putin, nu putem proceda ca si in cazul anterior. Vrem cumva
ca atunci cand multiplicam formula B2 sa ramana inghetat .
A2+B
Similar cu situatia de mai sus, numai ca de data asta selectam A2 atunci cand scriem
formula si apasam F4 si formula va arata in felul urmator:
=$A$2+B2
A2+B2
In aceasta ultima situatie atunci cand scriem formula selectam atat A2 cat si B2 si
apasam F4, formula va arata asa:
=$A$2+$B$2
Arsenal de ExcelNinja | 9
Taina dolarului :)
Eu v-am aratat in exemplul de mai sus un singur mod de a insera simbolul $ in formula.
Sunt de fapt 4 moduri in care putem folosi simbolul $:
A1 fara vreun simbol $: atunci cand multiplicam in jos formula creste valoarea
numerica (A2,A3,..), cand multiplicam in dreapta creste valoarea literei (B1,C1,)
$A1 cand multiplicam formula in jos, pe coloana, valoarea numerica creste,
cand multiplicam in dreapta nu se intampla nimic pentru ca am pus $ langa A
A$1 cand multiplicam formula in jos, pe coloana, nu se intampla nimic pentru
ca am pus $ langa numar; daca multiplicam in dreapta creste valoarea literei
(B1,C1, )
$A$1 fie ca multiplicam in jos pe coloana, fie ca multiplicam in dreapta, pentru
ca am pus $ atat in fata lui A cat si in fata lui 1 formula ramane neschimbata
In concluzie
Atunci cand facem referinta la o celula o scriem in felul urmator: A1. Atunci cand
adaugam semnul $ in stanga literei sau cifrei, asta face ca acel lucru sa ramana fix atunci
cand multiplicam formula.
E randul tau
Daca nu ai facut asta deja, incearca si tu tasta F4 in fisierul cu acelasi nume ca si acest
articol.
Arsenal de ExcelNinja | 10
Schimb
A
B
C
Unitati produse
Defecte
% defecte
6085
168
3%
5998
151
3%
5747
195
3%
Arsenal de ExcelNinja | 11
Arsenal de ExcelNinja | 12
Si cam atat, sper ca nu doar ai citit ce am scris eu, sper ca ai testat si tu in Excel-ul cu
acelasi nume ca si acest capitol.
Arsenal de ExcelNinja | 13
Rapoarte existente
Aceasta companie, ca sa stie cat vinde si cat cumpara are 2 rapoarte, unui de achizitii si
altul de vanzari. Le gasesti pe amandoua in fisierul cu acelasi nume ca si acest articol.
Raportul de achizitii
Data
Produs
2014/01/01 Produs 16
2014/01/02 Produs 28
2014/01/03 Produs 25
Furnizor
Cantitate
Furnizori 8
Furnizori 5
Furnizori 4
19
25
32
Pret
unitar
Total
49.00
112.00
119.00
931.00
2800.00
3808.00
Total
Data
incasarii
Si cel de vanzari
Data
emiterii
Produs
2014/01/01 Produs 10
2014/01/02 Produs 29
2014/01/03 Produs 21
Client
Client 45
Client 27
Client 38
Cantitatea
Pret unitar
21
22
35
32.00 672.00
27.00 594.00
100.00 3500.00
Status
2014/01/11 Platit
2014/01/12 Platit
2014/01/13 Platit
Evident ca ambele raporte au mai mult de 3 randuri, nu le-am pus in intregime aici, nu
am vrut sa intrec Enciclopedia Britannica la numar de pagini.
Arsenal de ExcelNinja | 14
Stocuri
Firma noastra si-a dat seama ca are nevoie, pentru fiecare produs in parte, de anumite
informatii. Au pus pe cineva sa calculeze manual cu pix si hartie informatiile din tabelul
de mai jos, dupa ce aceasta persoana si-a dat demisia au zis ca incearca sa automatizeze
procesul.
Nume produs
Nr.
comenzi
achizitii
Nr.
comenzi
vanzari
Total
bucati
cumparate
Total
bucati
vandute
Pret unitar
mediu
achizitii
Pret unitar
mediu
vanzari
Total
facturi
restante
Total
facturi
anulate
Produs 1
Produs 2
Produs 3
Facem un targ?
Eu o sa te ghidez pas cu pas prin acest exemplu, cu rezerva ca eu o sa ma ocup de
achizitii, te las pe tine sa gasesti rezolvarea pentru vanzari.
Numar de comenzi
Atunci cand spunem comanda ne referim efectiv la o linie din tabelul de achizitii. Vrem
sa vedem, pentru fiecare produs in parte cate comenzi au fost plasate, nu valoarea lor,
doar numarul.
De exemplu, pentru Produs 1 putem vedea ca avem 6 comenzi.
Data
Produs
Furnizor
2014/01/05
2014/03/08
2014/06/02
2014/06/28
2014/07/02
2014/10/19
Produs 1
Produs 1
Produs 1
Produs 1
Produs 1
Produs 1
Furnizori 12
Furnizori 15
Furnizori 16
Furnizori 17
Furnizori 25
Furnizori 12
Cantitate
9
2
4
30
49
33
Pret
unitar
62.00
25.00
117.00
32.00
84.00
73.00
Total
558.00
50.00
468.00
960.00
4116.00
2409.00
COUNTIF
Pentru a gasi numarul de comenzi fara sa abuzam de filtre, vom folosi formula COUNTIF,
formula care face o numarare daca o conditie este indeplinita.
Arsenal de ExcelNinja | 15
Arsenal de ExcelNinja | 16
Arsenal de ExcelNinja | 17
Cum formula SUMIF nu stie sa testeze decat o singura conditie, avem nevoie de o
alternativa. Aceasta se numeste SUMIFS sau SUMIF la plural, cu ajutorul careia putem
testa mai multe conditii inainte sa facem suma.
Hai sa punem microscopul pe SUMIFS:
=SUMIFS(sum_range, criteria_range1, criteria1, criteria_range2, criteria2, ...)
sum_range: celulele pe care vrem sa le adunam
criteria_range: celulele cu care vom compara
criteria: valoarea cu care vom compara criteria_range
Cu ajutorul SUMIFS putem sa testam oricate conditii dorim inainte de a face suma.
Revenim la oile noastre, vrem sa vedem valoarea facturilor restante pentru fiecare
produs in parte. Dupa cum v-am spus, avem 2 conditii:
1. Numele produsului sa fie egal cu ceea ce avem pe coloana A in tabelul de stocuri
2. Statusul sa fie egal cu restant
Eu zic sa scriem formula in felul urmator (pentru linia a 2-a):
=SUMIFS(Vanzari!E:E,Vanzari!B:B,Stoc!A2,Vanzari!H:H,"Restant")
Te las pe tine sa testezi formula, incearca sa scrii si formula potrivita pentru a vedea si
valoarea facturilor anulate.
Arsenal de ExcelNinja | 18
NUME
NUME 1
NUME 2
NUME 3
NUME 4
NUME 5
Prenume
Nume
Prenume, Nume
Prenume
Nume
In cele ce urmeaza vom folosi muschii Excel-ului pentru a ne simplifica viata cand
lucram cu liste care contin text. Vom lua pe rand fiecare coloana din tabelul de mai sus
si vom vedea ce formule putem sa folosim pentru a aduce textul in forma dorita.
De la prenume la Prenume
Pentru inceput vrem sa scriem prenumele cu litera mare, cum am invatat in clasa a doua
parca. Pentru asta folosim functia PROPER().
Aplicam aceasta functie pentru celula A2 si mai departe o multiplicam pana jos,
problema rezolvata.
=PROPER(A2)
Eu zic ca e o functie foarte simpla, arata-mi ca ai inteles cum functioneaza aplicand-o si
pentru coloana NUME.
Arsenal de ExcelNinja | 19
Prenume, Nume
Prea mult am indurat separatia dintre nume si prenume, vrem sa facem o mare unire
in care sa le aducem impreuna sub forma Prenume, Nume.
Am avea aici nevoie de o functie de lipire a 2 elemente de tip text. Am incercat =LIPIRE
dar nu a functionat, nici =CAPSARE nu a fost de mare ajutor.
Functia de care avem nevoie se numeste CONCATENATE si are urmatoarea sintaxa:
=CONCATENATE(text1, text2, ...)
Ca sa rezolvam problema mari uniri din Excel, pare ca ar trebui sa scriem functia in acest
fel (pentru E2):
=CONCATENATE(C2, D2)
Vedem insa ca rezultatul arata in felul urmator: Prenume 1Nume 1 si nu Prenume 1,
Nume 1. Ne lipseste virgula si spatiul dintre ele.
Nici o problema, le adaugam si pe acestea si formula finala va fi urmatoarea:
=CONCATENATE(C2, , , D2)
Prenume
Dupa fiecare mare unire mai vin si ganduri de secesiune. Ne-am hotarat ca vrem totusi
sa avem numele si prenumele pe 2 randuri separate. Hai sa vedem cum putem face asta
in cateva secunde, chiar daca vorbim de un tabel cu sute de randuri.
Vom incepe cu prenumele si pentru asta avem nevoie de functia LEFT:
=LEFT(Text, [numar_caractere])
Fiindca in mod normal nu vom avea vreodata o lista de persoane in care toate
prenumele sa aiba lunginea egala, mai avem nevoie de o functie care sa ne spuna la
fiecare prenume cate caractere sa rupem.
Arsenal de ExcelNinja | 20
Nume
Vreau sa te las sa te descoperi singur cum ar trebui scrisa formula pentru extragerea
numelui. Ca si idee, formula e usor diferita fata de ultimul exemplu.
In primul rand, vom folosi functia RIGHT si nu LEFT, sintaxa e la fel.
In al doilea rand, trebuie sa tinem cont ca lungimea numelui nu e egala cu pozitia unde
se afla virgula. Ca sa intelegem mai bine luam un exemplul lui Ion, Popescu
Lungime Prenume: 3 (pozitia unde se afla virgula - 1)
Lungime Nume: 7 (lungime text - pozitia unde se afla virgula)
Asta inseamna ca avem nevoie de o functie care sa ne spuna lungimea textului, adica
LEN:
=LEN(text)
Te las pe tine sa vezi cum ar trebui scrisa formula, daca totusi nu reusesti sa ii dai de
cap, poti gasi aici raspunsul.
Arsenal de ExcelNinja | 21
Trecut la
Matematica Romana
Geografie
Matematica Integralist
Radu
7
7
7
Gigel
3
5
2
Maricica
4
5
5
Corigent
Trecut la Matematica
Imi aduc aminte in liceu singura materie importanta si sfanta era Matematica, restul
erau considerate balet. Avand asta in vedere, primul lucru pe care il vom face este sa
vedem daca o persoana a promovat la matematica.
Arsenal de ExcelNinja | 22
Integralist / corigent
Aici totul se rezuma la cateva comparatii. In cazul in care punem eticheta integralist ne
intereseaza ca TOATE notele sa fie peste 5 iar cand ii scriem in frunte corigent ne
intereseaza ca CEL PUTIN UNA dintre note sa fie sub 5.
Asta se traduce in mai multe comparatii, descrise in limbaj simplu in felul urmator:
Integralist: DACA nota_matematica > 5 SI DACA nota_romana > 5 SI DACA
nota_georgrafie > 5
Corigent: DACA nota_matematica < 5 SAU nota_romana < 5 SAU nota_geografie
<5
Arsenal de ExcelNinja | 23
Arsenal de ExcelNinja | 24
Nume
Nume 1
Nume 2
Nume 3
Telefon
0740 111332
0740 111331
0740 111554
Email
Departament
email332@mail.com
email331@mail.com
email554@mail.com
Manager
Probabil ca ati observat campurile lipsa. Omul nostru vrea sa completeze campurile
lipsa, din fericire informatiile se gasesc in acest al doilea tabel.
Badge
131261
110234
168725
Nume
Nume 1
Nume 10
Nume 11
Departament
Departament 15
Departament 6
Departament 5
Manager
Manager 1
Manager 10
Manager 11
Varianta trista
Sunt mai multe moduri in care putem lua departamentul si managerul din al doilea
tabel. Vreau sa va prezint cea mai trista si consumatoare de timp varianta, asta ne va
ajuta sa intelegem VLOOKUP.
1.
2.
3.
4.
5.
Arsenal de ExcelNinja | 25
VLOOKUP
Nu stiu voi cum sunteti dar mie nu imi place munca repetitiva, VLOOKUP vine ca si
alternativa.
Arsenal de ExcelNinja | 26
Arsenal de ExcelNinja | 27
Exemplu
Vom lua exemplul de mai jos, stiu, e foarte complicat, greu de inteles, va explic acum.
Vedem acolo o casuta libera la vanzari, am vrea acolo, in functie de numarul lunii scris
putin mai jos, sa ne apara valoarea de vanzari.
Functia INDEX
Pentru asta vom folosi functia INDEX, hai sa vedem mai exact cum arata sintaxa.
=INDEX(array, row_num, [column_num])
Array: zona de celule unde facem cautarea
Row_num: numarul randului pe care vrem sa il returnam
Column_num: numarul coloanei pe care o returnam (optional in cazurile in care
zona de celule are o singura coloana)
Radu, eu nu inteleg
Imagineaza-ti o tabla de sah, array reprezinta patratelele de pe tabla de sah. Row si
Column reprezinta coordonatele pe care noi le dam.
Arsenal de ExcelNinja | 28
Revenind la exemplu
In functie de valoarea introdusa in E1, vrem sa returnam valoarea de vanzari
corespunzatoare. Daca ati citit descrierea de mai sus probabil ca sunteti de adcord cu
mine ca atunci cand scriem formula INDEX:
Array: sunt valorile de la A2 la A7, adica numerele de vanzari
Row_num: va fi egal cu ceea ce scriem in E1
Column_num: nu ne intereseaza in acest caz, zona de celule selectata de noi e pe
o singura coloana
Formula noastra va fi urmatoarea:
=INDEX(A2:A7,E1)
Functia MATCH
Probabil ca v-ati dat seama ca functia INDEX nu va functiona de una singura daca ii vom
da ca si argumente Oradea si Feb. Functia asta are nevoie de cifre. Am avea nevoie de
Arsenal de ExcelNinja | 29
inca o functie care sa caute zona si luna si sa ne returneze un numar. Exista, se numeste
MATCH si uite cum arata:
=MATCH(lookup_value, lookup_array,[match_type])
lookup_value: valoarea pe care o cautam
lookup_array: zona de celule in care cautam
match_type (optional): tip de cautare, mai mare, mai mic, egal
Pentru a vedea a cata valoare este G1 din A1:C2 avem:
=MATCH(G1,A1:C1,0)
Pentru a vedea a cata valoare este G2 din D2:D7 avem:
=MATCH(G2,D2:D7,0)
INDEX+MATCH
Aflam valoarea vanzarilor in functie de zona si luna vom folosi INDEX si MATCH in
combinatie. Trec direct la subiect, ecce formula:
=INDEX(A2:C7,MATCH(G2,D2:D7,0),MATCH(G1,A1:C1,0))
Legatura cu VLOOKUP
Unii dintre voi probabil ca v-ati lovit de acest lucru, formula VLOOKUP nu stie sa caute
decat in dreapta in cadrul table array, asta ne poate pune probleme in anumite cazuri.
Din fericire, folosind INDEX si MATCH putem rezolva aceasta problema, cu aceste
formule putem face un fel de cautare VLOOKUP in stanga.
Arsenal de ExcelNinja | 30
Problema
Voiam sa fac un model de factura in Excel in care sa ai un tabel cu informatiile despre
clienti si inca unul cu informatiile despre fiecare factura in parte. Informatiile le luam
din cele 2 tabele si le punem intr-un sheet nou folosind mai multe formule VLOOKUP.
M-am lovit aici de o problema, voiam ca atunci cand am informatii legat de un rand din
factura sa le afiseze iar atunci cand nu, sa nu se afiseze nimic, ca si in imaginea de mai
sus. Problema e ca VLOOKUP returneaza #N/A atunci cand nu gaseste nimic.
Cum ar fi fost sa pun pe site un model de factura care sa arate asa:
Arsenal de ExcelNinja | 31
Ce ai tu de facut
Stai linistit ca nu te las sa parcurgi acest capitol pana la final fara ca sa ai ceva de lucru.
Daca ai deschis deja fisierul cu acelasi nume probabil ai vazut ca e nevoie sa aplici functia
IFERROR in factura.
Eu iti spun doar spor la treaba, daca rezolvi aceasta treaba atunci ai obtinut si un miniprogram de facturare numai bun pentru afaceri mici PFA-uri.
Arsenal de ExcelNinja | 32
Autor
Numele meu este Radu Popa si lucrez la ROMCOM ca si consultant
resurse umane. Inca din frageda pruncie studentie am fost un amator de
Excel.
Desi am terminat o facultate tehnica (Calculatoare), am ales totusi sa
lucrez in resurse umane. Pana acum am avut sansa sa lucrez atat in IMM-uri cat si in
mediul corporatist.
Problema fundamentala pe care am descoperit-o in Romania este urmatoarea: nu stim
sa folosim Excel si Google Sheets destul de bine. Aceasta problema a devenit misiunea
mea in viata si de aici si ideea cu ExcelNinja.ro.
In viata de zi cu zi fac recrutare, livrez cursuri, in cea mai mare parte tehnice si imi ajut
clientii sa isi faca viata mai usoara cu ajutorul tehnologiei. Fac parte din ROMCOM o
companie romano-elvetiana din Oradea.
Contact
Mi-ar parea bine sa ne vorbim mai multe, poate ai intrebari sau sugestii. Datele mele de
contact mai jos:
radu.popa@romcom.ro
0740-135607
Sper ca ti-am fost de folos prin acest eBook.