Witam wszystkich.
Od kilku dni pracuję na OO Calc.
Do obrobienia mam każdego dnia jakieś 40 plików. W każdym jest taki sam układ danych. Jak to wszystko połączyć w jeden plik. Zdecydowanie uprości mi to pracę. narzędzia -> scal dokumenty ale nic z tego nie wyszło
Piotr
Trochę czasu z Calciem spędziłem, ale propozycja belstar-a wydaje się być nie trafna. AOO nie używam, a w LO
nie znajduję w meni Wstaw czegoś takiego jak wstaw dokument calc, chyba, że jest gdzieś głęboko "zakopane".
Ja proponowałbym po prostu przekopiować/przenieść arkusze do jednego pliku
lub
kopiuj-wklej specjalnie z opcją Połącz.
LinuxMint 18, Windows 7, LibreOffice (6.0.7)-64bit
Witam,
Tak jak pisze A_P, czegoś takiego jak wstaw-> plik nie znalazłem. Kopiować pliki po kolei przyprawia o ból głowy. Teraz tak robię, koszmarne zajęcie. Jan_J w weekend sprawdzę podesłane linki.
Dziękuję wszystkim za zainteresowanie.
Piotr
Piszesz ambitny, że masz do obrobienia 40 plików, ale tak naprawdę to nie wiadomo o co chodzi. Tylko Ty wiesz z czym pracujesz! Skąd się te pliki biorą?, jaka jest ich ranga?, czy ktoś inny je generuje?, czy tylko zbierasz z nich dane, czy coś tam uzupełniasz.
Jeżeli tylko zbierasz dane i są to ciągle te same pliki, to lepszą metodą byłoby skopiowanie zawartości poszczególnych arkuszy i wklejenie do arkuszy w pliku skomasowanym metodą Wklej specjalnie z opcją Połącz, ponieważ po każdej zmianie w arkuszu z pliku kopiowanego zmieni się (zaktualizuje) zawartość w twoim pliku skomasowanym.
Wybranie metody przenieś /kopiuj arkusz (której instrukcję tak czytelnie rozpisał Husar )powoduje, że dane zawsze są z chwili skopiowania bez możliwości zaktualizowania.
LinuxMint 18, Windows 7, LibreOffice (6.0.7)-64bit
Witam,
Przepraszam za dłuuuuugie milczenie. Cały miesiąc w rozjazdach.
Wracając do tematu. Pliki generują mi się z naszego wewnętrznego crm-a. Każdy plik to nazwa firmy. Teraz robię tak, otwieram pierwszy i do niego "doklejam" dane z pozostałych kilkudziesięciu, każdy otwieram i kopiuj wklej. Dane tylko sprawdzam i nic w nich nie zmieniam, czysta statystyka. Układ danych w każdym pliku jest dokładnie ten sam. Samo poklejenie w jeden zajmuje mi pół dnia, o ile mam czas. Zdarza się że nawet kilka dni. Masakra.
Pozdrawiam, Piotr
ps. Wstaw -> arkusz z pliku wstawia mi arkusz a nie "dokleja".
Będę z Ciebie wyciągał dalej. Musisz dokładnie sprecyzować nazewnictwo pliki czy arkusze w plikach. Napisz, nie wstydź się, Czy te generowane pliki mają ciągle tą samą nazwę?, Czy dane w tych poszczególnych plikach są dopisywane w kolejnych wierszach/kolumnach, czy wpisywane ciągle w tym samym miejscu?, potwierdź czy dane zbierasz do jednego arkusza?, Jaki jest układ: doklejasz wiersze, czy kolumny?
A może usuniesz wrażliwe dane i podeślesz przykładowy załącznik?
LinuxMint 18, Windows 7, LibreOffice (6.0.7)-64bit
Gratuluję cierpliwości
Nazwy plików nadaję sam podczas generowania z CRMa. Dane w pliku zawsze są w arkusz1. Układ danych zawsze ale to zawsze ten sam. Doklejam wiersze, począwszy od 2 (A2). Pliki w folderze układają się alfabetycznie, otwieram pierwszy i do niego doklejam pozostałe. Zobacz załącznik. Dane nie są istotne.
Piotr
ps. dzięki za cierpliwość i wyrozumiałość.
Ja spytam o coś innego:
a. czy kolejność łączenia ma znaczenie?
b. czy istnieje możliwość rozpoznania tożsamości wpisów na podstawie ich zawartości?
IMO trzeba zautomatyzować czynność kłopotliwą, choć łatwą do wykonania ręcznie, czyli napisać makro. Odpowiedzi na pytania mogą wpłynąć na szczegóły jego realizacji.
PS. gdyby pliki nie zawierały formuł, tylko dane, i gdyby zrezygnować z formatu skoroszytu na korzyść czystego tekstu (csv albo tsv), łączenie stałoby się banalne i sprowadziłoby się do wykonania zaklęcia systemowego (w Windows)
type *.txt > polaczone.txt
pozostaje tylko problem pierwszych wierszy, z opisem kolumn. Natomiast w uniksach (Mac, Linux) albo w Windowsie odpowiednio wyposażonym w uniksowe narzędzia byłoby tak:
cat *.txt | grep -v "tu fraza która występuje tylko w nagłówkach" > polaczone.txt
Ale to tak jako ciekawostka pokazująca, jak w skali społecznej odchodzimy od rzeczy prostych do skomplikowanych.
JJ LO (25.2) ∙ Python (3.13|3.10) ∙ Unicode 16 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
Jan_J pisze:b. czy istnieje możliwość rozpoznania tożsamości wpisów na podstawie ich zawartości?
nie do końca rozumiem. Pierwszy wiersz zawsze jest wierszem nagłówkowym, dalej już jak leci. Potrzebuję wszystkich danych. W arkuszu nie ma formuł, czyste dane.
Jan_J pisze: gdyby zrezygnować z formatu skoroszytu na korzyść czystego tekstu
- tu już jestem kompletnie zbaraniały
Co do reszty to jak wyżej. Z OO korzystam bardzo krótko i jego możliwości też są dla mnie kompletnie obce.
Piotr
Czyste dane, więc nie trzeba ich formatować. Więc format txt albo jego odmiany, jak csv, jako prostszy i nie wymagający zaawansowanych narzędzi, dałby się obsłużyć poleceniami systemu operacyjnego. Dane w formacie czysto tekstowym da się połączyć przez fizyczne połączenie zawartosci plików, o tym pisałem w poście wyżej. Calc nie byłby potrzebny, przynajmniej nie na tym etapie pracy. Zaś dane csv importuje się do arkusza bardzo łatwo.
Ale to mrzonka. Przyzwolenie społeczne na użycie narzędzi informatycznych nie obejmuje dziś takich metod, mimo że są stosunkowo proste. Wystarczy porównać stopień złożoności zaklęcia z mojego poprzedniego postu z treścią kodu z załączonego niżej pliku.
W załączniku plik zip, a w nim kilka skoroszytów. Jeden jest ważny: scalanie.ods.
W komórce A1 nazwa pliku jaki powstaniepo scaleniu zawartości pozostałych. Ich nazwy wpisane do kolumny A, od wiersza 2 począwszy. Pierwsza pusta komórka kończy listę. Nazwy są bez rozszerzeń, '.ods' będzie automatycznie doklejone. Pliki muszą być umieszczone w tym samym folderze co scalanie.ods. Nieistnienie zadeklarowanego pliku spowoduje błąd wykonania.
W komórce C1 liczba kolumn do kopiowania, wspólna dla wszystkich plików.
Kopiowane są dane z pierwszego arkusza w każdym skoroszycie. Nazwa tego arkusza nie gra roli.
Z pierwszego dokumentu pobierany jest nagłówek i dane, z następnych tylko dane tj. od wiersza 2 do końca. Nie sprawdza się, czy nagłówek został faktycznie wpisany czy nie, po prostu pierwszy wiersz jest przyjmowany jako nagłówek.
Pozostałe skoroszyty (p1.ods, p2.ods, p3.ods) służą tylko jako źródła danych do demonstracyjnego użycia.
Po wypełnieniu kolumny z nazwami plików
Narzędzia/Makra/Zarządzaj/Basic/<scalanie.ods>/Module1/scalanie_plikow/Uruchom
Plik wynikowy (nazwa jak w A1 + '.ods') znajdziesz w tym samym folderze. Jeżeli był tam już wcześniej, zostanie w całości nadpisany makrem.