Ponekad može da vam se javi potreba da referencirate podatke u Microsoft Excel fajlovima na osnovu sadržaja u ćelijama trenutne radne sveske. Na primer, ukoliko ćelija A1 sadrži vrednost „ABC“ i ćelija A2 sadrži „XYZ“, a vi želite da referencirate radni list (sheet) XYZ u radnoj svesci ABC.XLS formule i da imate reference koje prate sve promene u ćelijama koje sadrže dati naziv fajla (ćelija A1) i radne sveske (ćelija A2).
Koristeći standardni metod selekcije eksternih skupova podataka dobićete apsolutne reference. Nastavljajući sa primerom, ako želite da pristupite sadržaju ćelije B2 u eksternom radnom listu, koristili biste standardni metod selekcije podataka, što bi rezultovalo sledećim "=function(„[ABC.xls]XYZ“!B2)". Očigledno je da ovim ćelije u lokalnom radnom listu neće pratiti promene u ćelijama A1 i A2. Da li postoji rešenje ovog problema?
Rešenje se nalazi u upotrebi malo poznate funkcije INDIRECT. Ukoliko imate validnu eksternu adresu, možete referencirati tu eksternu adresu nekoj drugoj ćeliji sa sledećom linijom:
=INDIRECT(A1)
Na primer, ako A1 sadrži string, biće:
[ABC.xls]XYZ’!B2
i onda će funkcija „=INDIRECT(A1)“ vratiti vrednost ćelije B2 radnog lista XYZ, koji se nalazi u radnoj svesci ABC.xls. Takođe, funkciju INDIRECT možete koristiti kao argument unutar druge funkcije.
Pošto smo postavili pitanje o građenju eksterne reference koristeći naziv radne sveske u ćeliji A1 i naziv radnog lista u A2, onda će trebati da spojimo vrednosti iz ćelija A1 i A2 da bismo izgradili kompletnu eksternu referencu u nekoj drugoj ćeliji. Na primer u ćeliji A3, i onda bismo pisali:
="["&A1&"]&A2"!B2"
Tada možete napisati =INDIRECT(A3) radi dobijanja vrednosti B2 iz vašeg eksternog radnog lista. Promene u ćelijama A1 i A2 automatski će se reflektovati na ćeliju A3.
Pratite Krstaricu na www.krstarica.com