Proste utomatyczne pobieranie danych z wielu plików.

Nie wiesz, gdzie umieścić swój post? Pisz tutaj!
Xymen
Posty: 2
Rejestracja: śr maja 06, 2015 12:37 pm

Proste utomatyczne pobieranie danych z wielu plików.

Post autor: Xymen »

Witam,
Szukam od pewnego czasu rozwiązania aby Calc pobierał dane które w kilku plikach są zawsze w tych samych miejscach.
Wprowadzanie reczne jest czasochlonne, a wyniki ktore chce pobierac do innego arkusza sa zawsze, we wszystkich arkuszach zrodlowych w tych samych nazwach komorek.

Trudno mi to nazwać więc piszę trochę na około.
Chcę zrobić arkusz, który w jednym miejscu pokaże wyniki pobrane z kilku plików.
Czyli:
Jest arkusz pracy w którym pracownik wpisuje dane, które się tam sumują z innymi zmiennymi, a następnie wyświetla wyniki. (Wiele wyników)
Każdy pracownik ma oddzielne arkusze calc tylko do swoich danych.
Chodzi o to, aby w jednym zbiorczym arkuszu pojawiały się wyniki z arkuszy wszystkich pracowników.
Klikanie i wprowadzanie linków ręcznie jest zbyt czasochłonne.
Szukam rozwiazania by po wprowadzeniu źródła danych (informacji gdzie leży plik) calc automatycznie pobieral interesujace mnie komórki.
Innymi słowy jak sprawic by przy opisie w komorkach wynikowych przy jednorazowym nakladzie siły zmienial sie potem szymbko tylko link do pliku, bo komorki zawsze sa takie same.
Ktoś ma jakiś pomysł? Może inne rozwiązanie jak sumować wnyniki automatycznie z nowych arkuszy (arkusze z kazdym projektem zmieniaja swoją nazwę, więc nie da się raz ustawić nazwy)

Z nadzieją wyglądam, że kogoś ten wątek zainteresuje...:)
Apache Open Office 3, Mac
Jan_J
Posty: 4575
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Proste utomatyczne pobieranie danych z wielu plików.

Post autor: Jan_J »

1. Wstaw/Dane zewnętrzne odpada, bo trzeba ustalać nazwę pliku na sztywno. Chyba że makrem.

2. Funkcja DDE("soffice", URL_pliku, adres_danych_w_pliku). adresem danych może być zakres komórek (np. "Arkusz2.a3:d7") albo nazwa zakresu np. "Koszty finalne". Ponieważ i ścieżka do pliku, i adres danych są tekstami, funkcja może pobierać je z komórek:
A2: f:\skoroszyt17.ods
B2: dane_ostateczne
C2: =DDE("soffice"; A2; B2)

3. Za chwilę zapewne padnie pytanie, czy nie da się umieszczać kolejnych bloków jeden pod drugim. Krótko: trzeba kombinować, podobnie jak przy składaniu wielu bloków z jednego arkusza w długi wspólny blok.

4. Może się okazać, że aktualizacja na żądanie, polegająca na odpaleniu skryptu, który zebrałby rozproszone dane w jednym miejscu, będzie prostsza w zaprojektowaniu i utrzymaniu niż aktualizacja (teoretycznie) automatyczna, oparta na 2. i spełniająca 3.
JJ
LO (24.2|7.6) ∙ Python (3.12|3.11|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
ODPOWIEDZ