[SOLVED] Kopiowanie treści z tabeli w zmienionej kolejności

Użytkowanie arkusza kalkulacyjnego
Laluś
Posty: 3
Rejestracja: czw sty 27, 2022 12:53 am

[SOLVED] Kopiowanie treści z tabeli w zmienionej kolejności

Post autor: Laluś »

Szukam sposobu na skopiowanie całej tabeli do kolejnego arkusza, ale w zmienionej kolejności: na przykład w tabeli mam 20 pracowników i ich wszystkie dane dotyczące ztrudnienia. Do kolejnego arkusza chciałbym przekopiować te dane w zmienionej kolejności, czyli to co było w kolejnych kolumnach żeby teraz było w różnych komórkach - żeby powstał swego rodzaju podsumowanie warunków zatrudnienia dla każdego pracownika
Ostatnio zmieniony śr lut 02, 2022 12:46 am przez Laluś, łącznie zmieniany 1 raz.
Libreoffice 6.4 dla LINUX
Jan_J
Posty: 4558
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Kopiowanie treści z tabeli w zmienionej kolejności

Post autor: Jan_J »

Czy z poziomu formularza dot. pojedynczego pracownika masz zunifikowany dostęp do jego danych? np. że pracownik „leży” w osobnym arkuszu, w którego komórce B3 widnieje jego numer ewidencyjny, taki jak w tabeli, z której chcesz pobrać dane?
Jeśli tak, to przyjrzyj się funkcjom:
WYSZUKAJ.PIONOWO
oraz tandemowi PODAJ.POZYCJĘ i INDEKS
W obu przypadkach zadziała to inaczej niż zamierzasz, bo w odwrotną stronę: to nie dane skopiują się do formularzy, tylko formularz będzie pobierał dane z tablicy. Nie trzeba tego robić 20 razy; raczej zbudować szablon takiego formularza i powielić go.

Jest też inna możliwość: wygenerować formularze nie jako dokumenty Calca zaciągające dane przez z formuły, tylko jako „korespondencję seryjną” pobierającą zmienne fragmenty z Twojej tabeli do przygotowanego szablonu.

Sztywne „wrzucenie” danych w odpowiednie miejsca w już przygotowanych dokumentach wymagałoby napisania kawałka kodu programistycznego; nie wiem czy to jest to na czym Ci zależy.
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
Awatar użytkownika
Jermor
Posty: 2239
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Kopiowanie treści z tabeli w zmienionej kolejności

Post autor: Jermor »

Uważam, że bardzo słabo opisałeś swój problem. Napisanie:
Laluś pisze:...to co było w kolejnych kolumnach żeby teraz było w różnych komórkach..
nie wyjaśnia niczego.
Rozwiązania zaproponowane przez @Jan_J mają charakter uniwersalny. Formuły możesz wstawiać w dowolnych komórkach, pobierając w ten sposób wymagane dane z tabeli podstawowej.
Poza tym, co właściwie oznacza
Laluś pisze:żeby powstał swego rodzaju podsumowanie warunków zatrudnienia dla każdego pracownika
skoro jak sam napisałeś w tabeli podstawowej
Laluś pisze:mam 20 pracowników i ich wszystkie dane dotyczące ztrudnienia
AOO 4.1.15, LO 7.5.9 (x64) na Windows 10 64bit
Ważne!
Jeśli twój problem został rozwiązany, wróć do swojego pierwszego postu, przejdź do edycji i dopisz [SOLVED] w temacie.
Inni, którzy mają podobny problem, będą wiedzieli, że istnieje jego rozwiązanie.
Laluś
Posty: 3
Rejestracja: czw sty 27, 2022 12:53 am

Re: Kopiowanie treści z tabeli w zmienionej kolejności

Post autor: Laluś »

Cóż... nie ma się co oszukiwać, słabo się na tym znam, więc i wyjaśnienie problemu jest dla mnie trudne.
Bardziej opisowo:
W tabeli mam dane 20 pracowników, w wierszach są kolejni pracownicy, natomiast w kolumnach ich dane zatrudnienia, od kiedy, jaka forma zatrudnienia, jaka stawka, jaka premia itp itd.
Zależy mi, żeby w kolejnym arkusz z każdego z tych wierszy tworzyło się 'podsumowanie' ale juz nie w formie tabeli. Zatem te same dane będą zamiast zajmować zakres A1:P1, teraz będą przedstawione w zakresie A1:F7, nie jako suche dane, ale z opisem - czy to dodanym czy to zaciągniętym z innej komórki. Czyli format i opisy dla każdego pracownika jest jednakowy, natomiast zmieniają się dane zaciągnięte z tabeli.
Oczywiście można napisać do każdej komórki takie odniesienie ręcznie, ale chciałbym to zautomatyzować, czyli właśnie stworzyć szablon, który po zmianie na przykład Lp. będzie zaciągał sobie dane z innego wiersza.
Libreoffice 6.4 dla LINUX
Laluś
Posty: 3
Rejestracja: czw sty 27, 2022 12:53 am

Re: Kopiowanie treści z tabeli w zmienionej kolejności

Post autor: Laluś »

Słabo umiem w arkusze, więc i wytłumaczyć trudno xD ale tak, masz rację, jak usiadłem do tego na wypoczętego, to niezbyt zrozumiale napisałem

W załączniku przykład: w arkuszu 1 dane pracowników w tabeli, w arkuszu drugim przykładowe podsumowanie (z odniesieniami wklepanymi ręcznie) które chciałbym stworzyć, które chiciałbym żeby było kopiowalne, tj: wpisując kolejne Lp. Podsumowanie będzie się odnosiło do kolejnego pracownika.

Poniekąd rozumiem co zaproponował @Jan_J, tylko jeszcze nie udało mi się tego zastosować.
Załączniki
Płace przykład.ods
(12.68 KiB) Pobrany 68 razy
Libreoffice 6.4 dla LINUX
Awatar użytkownika
Jermor
Posty: 2239
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: [SOLVED] Kopiowanie treści z tabeli w zmienionej kolejno

Post autor: Jermor »

Idąc tropem wskazówek @Jan_J:
Obszarowi twoich danych o pracownikach nadałem nazwę "Załoga", Obejmuje on teraz zakres komórek od A5:V25 i jest otoczony zieloną krawędzią. Napisałeś bowiem, że mogą tu się znaleźć jakieś inne informacje, o których na razie jeszcze nic nie wiesz. Ta nazwa będzie używana w formułach zamiast adresu.
W Arkusz2:
W pozycji nazwiska wykorzystałem możliwości kontroli poprawności danych i w tej komórce (po kliknięciu) pojawi się rozwinięta lista nazwisk pracowników. Wybór pracownika sprawi, że górnym lewym rogu tego formularza pojawi się numer wiersza w obszarze "Załoga", właściwego dla wybranej osoby.
Jest tam wykorzystana funkcja: PODAJ.POZYCJĘ().
W kolejnych komórkach zastosowana jest funkcja INDEKS(), która z podanego wiersza i odpowiedniej kolumny obszaru "Załoga" zwraca wymaganą zawartość.
W zwracanym pliku wyłączyłem łącze do pliku zewnętrznego.
Załączniki
Laluś Płace przykład.ods
(14.19 KiB) Pobrany 72 razy
AOO 4.1.15, LO 7.5.9 (x64) na Windows 10 64bit
Ważne!
Jeśli twój problem został rozwiązany, wróć do swojego pierwszego postu, przejdź do edycji i dopisz [SOLVED] w temacie.
Inni, którzy mają podobny problem, będą wiedzieli, że istnieje jego rozwiązanie.
ODPOWIEDZ