Jak wykonać uaktualnienie tabeli...

Użytkowanie arkusza kalkulacyjnego
KontoLibreOffice
Posty: 92
Rejestracja: wt paź 04, 2022 5:48 pm

Jak wykonać uaktualnienie tabeli...

Post autor: KontoLibreOffice »

za pomocą innej tabeli.
Przykład w załaczniku
Załączniki
komentarzlibre11,10,22.ods
(11.89 KiB) Pobrany 66 razy
7.5.6.2 (X86_64)
Awatar użytkownika
Jermor
Posty: 2325
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Jak wykonać uaktualnienie tabeli...

Post autor: Jermor »

Moja propozycja , to wykorzystanie możliwości konsolidacji. Dzięki temu aktualny cennik nie będzie zawierał żadnych formuł. O konsolidacji możesz przeczytać między innymi tutaj: https://yestok.pl/lbo/y59.php#5908
Rozwiązanie załączam w zwrotnym pliku.
Oto zasada działania: Arkusz "Cennik" zawiera wykaz artykułów wraz z obecnymi cenami i jest to pierwszy obszar konsolidacji. W załączonym pliku założyłem, że jest to obszar A1:B800
Arkusz "Zmiany".
Spośród funkcji dostępnych w przebiegu konsolidacji do zastosowania jest funkcja SUMA. To powoduje, że danymi konsolidowanymi musi być różnica między ceną w cenniku a ceną proponowaną. Dlatego w tym arkuszu można wpisać tylko symbol artykułu i proponowaną cenę. Drugi obszar konsolidacji obejmuje zakres A1:B30. W kolumnie B następuje automatyczne wyliczenie różnicy między cenami, ponadto, jeśli w tym obszarze zostanie wpisany symbol artykułu, którego nie ma w cenniku, to zostanie ten artykuł dodany do cennika z podaną ceną. W tym arkuszu włączyłem ochronę (bez hasła), aby przypadkowo nie skasować formuł obliczeniowych w kolumnie B.
Calc pamięta parametry konsolidacji, więc po ustaleniu wszystkich parametrów wystarczy w dowolnym momencie wywołać polecenie "Dane -> Konsoliduj..." i nacisnąć przycisk OK w oknie dialogowym. Można sobie zarejestrować odpowiednie makro do tej czynności. Trochę się pospieszyłem z tą skreśloną informacją. Owszem pamięta, ale tylko w uruchomionej sesji. Po otwarciu albo przeładowaniu pliku pozostaje jeden zdefiniowany obszar konsolidacji, miejsce docelowe i ustawione opcje. To prawdopodobnie jest jakieś przeoczenie autorów, bo albo wszystko powinno wracać do stanu zerowego, albo ostatni stan w pliku powinien zostać zachowany. Taka sama sytuacja jest w Apache OpenOffice. Na dodatek nie można sobie zarejestrować makra ustawiającego te obszary, gdyż makra nie rejestrują operacji w oknie konsolidacji. Tak, że sorry. Metoda jest dobra, ale trzeba to robić ręcznie. Obszar konsolidacji można wskazać przez nadaną mu nazwę co zwalnia nas z zaznaczania obszarów w arkuszach. Drugi obszar konsolidacji, ten z arkusza "Zmiany" nosi nazwę "nowe", obszar cennika ma nazwę "Cennik_kons", więc wystarczy ją wskazać i dodać do obszarów konsolidacji.
W arkuszu "Zmiany" kolumna B ma przypisaną nazwę "Cena" (a nie np. "Różnica"), taką samą jak kolumna B w cenniku, a to dlatego, że konsolidacja po tej nazwie wie, które kolumny mają być poddane wybranej w konsolidacji funkcji.
Pewną niedogodnością konsolidacji jest to, że obszary konsolidacji muszą być wskazane w postaci adresów bezwzględnych i nie ulegają zmianom podczas dodawania lub usuwania wierszy, lub kolumn w takich obszarach. Dlatego pierwszy obszar utworzyłem dostatecznie duży, zakładając, że 799 pozycji wystarczy. Drugi obszar umożliwia zmiany cen 29 artykułom. Aby zmienić zakres obszaru, należy go najpierw usunąć, a następnie ponownie zdefiniować.
Załączniki
klo_J.ods
(14.73 KiB) Pobrany 71 razy
Ostatnio zmieniony wt paź 11, 2022 7:44 pm przez Jermor, łącznie zmieniany 1 raz.
AOO 4.1.15, LO 24.2.5 (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