Aici este descris un exemplu mai mult didactic, dar care poate fi folosit și în diverse rapoarte sau alte documente pentru a prelua cursul valutar la o anumită dată calendaristică. În acest exemplu, utilizatorul tastează în celula F5 o dată calendaristică în format ZZ-LL-AAAA, iar Excel afișează cursul valutar la dreapta (pentru zilele de luni-vineri) sau mai jos (pentru zilele de sâmbătă, duminică și sărbători legale).
Mai jos este descris modul de realizare al fișierului, iar la finalul articolului sunt legături la fișierele sursă, care pot fi descărcate, pentru versiunea Excel 2016 sau o versiune Excel mai veche (minim 2007). Pentru Excel 2003, trebuie modificată formula din celula G5 - se înlocuiește IFERROR(...) cu IF(ISERROR(...),...) - descrierea este mai jos.
Pe pagina https://www.cursbnr.ro/curs-valutar-bnr a fost aleasă perioada - aici 03.01.2005-14.05.2019 și tabelul obținut a fost selectat și copiat într-un fișier Excel, în coloanele B și C (vezi imaginile de mai jos).
Notă: Opțional, folosind formula DATEDIF se poate verifica numărul de zile dintre două zile consecutive (în Excel, coloana D). De exemplu, în celula D9, formula folosită este =DATEDIF(B8,B9,"D")
, care calculează diferența de zile dintre 3 și 4 ianuarie 2005. Întotdeauna în formula DATEDIF, cele două date calendaristice se pun în ordine crescătoare; în caz contrar, va fi afișată eroarea #NUM!.
În partea dreaptă a tabelului se află formula de căutare a valorii euro:
- în celula F5 se tastează data calendaristică
- în celula G5, Excel caută valoarea cursului în funcție de data introdusă, cu ajutorul funcției VLOOKUP.
Formula folosită: =VLOOKUP(F5,B8:C3641,2,FALSE)
Însă atunci când data introdusă este într-o zi de sâmbătă, duminică sau într-o zi de sărbătoare legală, Excel nu va regăsi data în coloana B și va întoarce ca rezultat un mesaj de eroare (#N/A).
În aceste zile, cursul valutar rămâne cel din ziua anterioară lucrătoare și se va folosi o altă formulă pentru a-l afișa, descrisă mai jos.
Pentru a evita afișarea erorii #N/A, funcția VLOOKUP poate fi înglobată în una din funcțiile:
=IF(ISERROR(VLOOKUP(F5,B8:C3641,2,FALSE)),"Vezi cursul mai jos")
=IFERROR(VLOOKUP(F5,B8:C3641,2,FALSE),"Vezi cursul mai jos")
=IFNA(VLOOKUP(F5,B8:C3641,2,FALSE),"Vezi cursul mai jos")
În celula G5, atunci când Excel nu găsește exact (VLOOKUP cu parametrul FALSE) data căutată, este afișat un mesaj de atenționare: Vezi cursul mai jos.
Pentru ca mesajul să iasă mai bine în evidență, s-a folosit formatarea condițională: dacă în celulă va fi afișat mesajul de atenționare, acesta să fie formatat cu roșu, iar celula să fie umplută cu galben.
În celulele I8:J14 se află un mic tabel cu numele zilelor în română.
Folosind în celula F6 formula WEEKDAY cu parametrul Return_type = 2, Excel determină numele zilei introduse în celula F5 și afișează o combinație de funcții și text.
Formula folosită:
=TEXT(F5,"dd-mm-yyyy")&" a fost într-o "&VLOOKUP(WEEKDAY(F5,2),I8:J14,2,FALSE)
De exemplu, pentru 08-01-2005, textul afișat va fi: 08-01-2005 a fost într-o sâmbătă
În celula F7, Excel va afișa un text doar DACĂ (IF
) data căutată este o sărbătoare legală - altfel zis, dacă
ISNA(VLOOKUP(F5,B8:C3641,2,FALSE
)și (adică funcția logică AND, pusă la începutul celor două condiții)
WEEKDAY(F5,2)<6
.Formula folosită:
=IF(AND(ISNA(VLOOKUP(F5,B8:C3641,2,FALSE)),WEEKDAY(F5,2)<6),"(sarbatoare legala)","")
Și aici (la fel ca la celula G5), la celula F7 s-a aplicat o formatare condițională - text scris cu roșu și umplerea celulei cu galben.
Folosind funcția VLOOKUP (aici cu TRUE pentru o potrivire aproximativă - ”Approximate Match”) sau funcțiile INDEX și MATCH, în celulele F9 și F10 se află două variante de căutare a datei anterioare lucrătoare:
=VLOOKUP(F5,B8:B3641,1,TRUE)
=INDEX(B8:B3641,MATCH(F5,B8:B3641,1),1)
și în celulele G9 și G10 se preia valoarea euro pentru data anterioară care are curs valutar:
=(VLOOKUP(F9,B8:C3641,2,FALSE))
=INDEX(B8:C3641,MATCH(F5,B8:B3641,1),2)
Fișierele Excel folosite mai sus pot fi descărcat:
https://drive.google.com/file/d/1oU-spk3_Zo3gw4hqacaCQOnTv-YQEdp9/view?usp=sharing
https://drive.google.com/file/d/12nuxauq8_vKLiWc_LIRK5yVFGbCAp3wy/view?usp=sharing