Excel - przekazywanie danych pomiędzy plikami


(fifi101) #1

Problem:

Mamy 2 pliki Excel'a (A, B), w każdym są arkusze. W pliku A nie można nic zmieniać poza wpisaniem danych pochodzących z pliku B.

Moje pytanie brzmi: czy możliwe jest automatyczne przekazywanie danych pomiędzy dwoma różnymi plikami Excel'a - wpisuję coś w Arkuszu 1 w pliku A i automatycznie trafia to w wyznaczone miejsce w Arkuszu 1 w pliku B? Wiem, że można tak zrobić z wieloma arkuszami w jednym pliku używając makr, ale czy w różnych plikach też się da? #-o

Obecnie muszę sam filtrować olbrzymi arkusz w pliku B, kopiować 100 razy pojedyńcze wartości i wklejać je w arkuszu w pliku A.


(Tomek Matz) #2

Do zrobienia tego nie potrzeba makra. Ale wracając do Twojego pytania ...

Załóżmy, że w tym samym folderze masz 2 pliki xlsx o nazwach Zeszyt1 i Zeszyt2. Jeśli w którejś z komórek w skoroszycie Zeszyt2 chciałbyś teraz umieścić wartość z komórki A1 z arkusza Arkusz1 ze skoroszytu Zeszyt1 , to musisz wpisać takie coś:

=[Zeszyt1.xlsx]Arkusz1!$A$1

Jeśli pliki Zeszyt1 i Zeszyt2 nie znajdują się w tym samym folderze, to wówczas polecenie będzie wyglądać tak:

='\[Zeszyt1.xlsx]Arkusz1'!$A$1

Gdy wprowadzisz te zmiany, to od tej chwili za każdym razem, gdy będziesz otwierać skoroszyt Zeszyt2, będziesz pytany czy chcesz zaktualizować wartości (dotyczy wersji 2007 i pewno też 2010, nie wiem jak jest w poprzednich). Najlepiej zrób sobie dwa testowe pliki i sam poeksperymentuj.