Odwołanie z Calc do danych w pliku Writer

Użytkowanie edytora dokumentów
rsikon
Posty: 1
Rejestracja: czw mar 31, 2022 5:23 pm

Odwołanie z Calc do danych w pliku Writer

Post autor: rsikon »

Witam.

W dokumencie rozliczenie.odt mam utworzoną tabele ... w tabeli komórki.. - dokładniej np: Tabela9:R10

Czy mogę z pliku specyfikacja.ods odwołać się do danych z pliku rozliczenie.odt mieszczących się w Tabeli9 komórce R10 ?


Radek
OpenOffice 4
Awatar użytkownika
Rafkus
Posty: 515
Rejestracja: czw kwie 12, 2018 10:26 pm

Re: Odwołanie z Calc do danych w pliku Writer

Post autor: Rafkus »

Wiem, że można to zrobić przy pomocy łącza DDE
Łącze DDE można wstawić, kopiując zawartość z jednego pliku i wklejając do innego poprzez wybranie Edycja - Wklej specjalnie, a następnie zaznaczenie pola Łącze. DDE jest tekstowym systemem łączenia, więc do docelowego arkusza są kopiowane tylko wyświetlane miejsca dziesiętne.
LibreOffice 7.4.6 (preferowany) oraz OpenOffice 4.1.6. Widows 10
OpenOffice 4.1.3. oraz Libre 4.2.5.2 Windows XP
Awatar użytkownika
Jermor
Posty: 2252
Rejestracja: sob paź 12, 2013 11:09 am
Kontakt:

Re: Odwołanie z Calc do danych w pliku Writer

Post autor: Jermor »

Jeśli chodzi o możliwość pobrania zawartości komórki tabeli utworzonej w dokumencie tekstowym do komórki arkusza kalkulacyjnego, to odpowiedź @Rafkus-a jest połową odpowiedzi. Do tego pojawia się następujące wyjaśnienie.
  • W komórce tabeli dokumentu tekstowego należy zaznaczyć tylko występująca tam zawartość, a nie całą komórkę.
  • W wybranej komórce arkusza kalkulacyjnego wykonać opisaną operację "Wklej specjalnie..."
  • W wyniku tego do komórki zostanie wstawiona funkcja DDE z właściwie utworzoną zawartością. W dokumencie tekstowym kopiowana zawartość zostanie opatrzona nazwą zakładki (wygenerowaną przez oprogramowanie).
  • Powstanie zakładki grozi przypadkową utratą powiązania tekst -> arkusz. Wynika to z tego, że Writer nie kontroluje miejsca zakładki w taki sposób, że uprzedza o możliwości jej usunięcia. Łatwo wówczas, wpisując nową zawartość do komórki w tabeli tekstowej skasować zakładkę. Zakładka prezentowana jest w dokumencie jako treść zawarta między nawiasami kwadratowymi [treść], pod warunkiem, że przy wyświetlaniu znaków formatujących zaznaczono także opcję "Zakładki". Te nawiasy pokazywane są w takim samym kolorze jak znaki ENTER, SHIFT+ENTER czy spacja. Poprawiając nieumiejętnie zawartość zakładki można "usunąć" oznaczenie zakładki, przez co utraci się powiązanie z komórką arkusza kalkulacyjnego.
Drugim sposobem jest utworzenie formuły odwołującej się bezpośrednio do komórki w tabeli znajdującej się w dokumencie tekstowym.
Każda tabela utworzona w dokumencie tekstowym otrzymuje automatycznie swoją indywidualną nazwę. W polskiej wersji pakietu standardowo przypisywaną nazwą jest "Tabelanr", w której "nr" jest liczbą porządkową tabeli (w kolejności ich powstawania, a nie rozmieszczenia w dokumencie).
Autor może zmienić nazwę tabeli na własną. Ponadto komórki takiej tabeli mają adresowanie analogiczne do tego zastosowanego w arkuszach kalkulacyjnych. Aby uzyskać dostęp do komórki takiej tabeli, należy w komórce arkusza kalkulacyjnego wpisać formułę o następującej postaci:

Kod: Zaznacz cały

='file:///dysk:/Folder/plik.odt'#$nazwatabeli.adreskomórki
czyli dla podanego przez ciebie przykładu np. takiego:

Kod: Zaznacz cały

='file:///C:/Pliki użytkownika/folder danych/rozliczenie.odt'#$Tabela9.R10
Niezależnie od zastosowanego sposobu należy ustawić opcje umożliwienia odświeżania danych zewnętrznych (Narzędzia -> Opcje... -> LibreOffice -> Bezpieczeństwo -> Opcje -> Blokuj wszystkie łącza...). W przeciwnym razie po załadowaniu arkusza pojawi się monit o zablokowany(m\ch) łącz(u\ach) i prośba o zgodę na ich uaktualnienie. Łącza są zawsze aktualizowane przy ładowaniu pliku arkusza kalkulacyjnego, czyli przy jego otwieraniu lub użyciu polecenia "Plik -> Załaduj ponownie".


Gdy chcesz pobrać zawartość wybranej komórki w arkuszu kalkulacyjnym i umieścić ją w dokumencie tekstowym, to jest tylko jedna metoda. Polega ona na utworzeniu pola "Pole DDE" należącego do kategorii "Zmienne". Należy skopiować komórkę arkusza (w tym przypadku nie jej zawartość), a następnie wkleić specjalnie do dokumentu tekstowego wybierając opcję łącza DDE. Do dokumentu tekstowego zostanie wstawiona tabela zawierająca zawartość skopiowanej komórki (lub komórek, jeśli skopiowano zakres komórek).
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