Strona 1 z 1
zgubiona własna funkcja
: pn lip 21, 2025 2:12 pm
autor: AdamTko
Dzień dobry,
stworzyłem jakieś 3 lata temu rozbudowany i zaawansowany (jak na mnie) arkusz, w którym użyłem stworzonej przez siebie funkcji. Matematycznie dość banalna, ale też mocno rozbudowana. Sama funkcja miała dobre kilkadziesiąt linijek tekstu.
Mam teraz potrzebę skorzystania z tego arkusza, na innym komputerze, pobrałem więc plik z backupu, otworzyłem i działa w Libre Calc (w Excelu ni hu hu) ale... nie mam możliwości (lub nie umiem) odczytać kodu w/w funkcji a już trym bardziej go edytować.
Czy jest jakieś rozwiązanie lub podpowiedź, co mogę zrobić?
Re: zgubiona własna funkcja
: pn lip 21, 2025 6:25 pm
autor: Jan_J
A co próbowałeś zrobić, by odczytać kod?
Standardowo z menu Narzędzia → Makra → Zarządzaj → ...
Re: zgubiona własna funkcja
: pn lip 21, 2025 9:23 pm
autor: AdamTko
Właśnie to próbowałem: menu Narzędzia → Makra → Zarządzaj →
i tam rozwijałem i klikałem wszelkie możliwe możliwe pozycje i mojej funkcji nie znalazłem.

- makro.png (25.62 KiB) Przejrzano 544 razy
Re: zgubiona własna funkcja
: pn lip 21, 2025 9:36 pm
autor: AdamTko
Jest gorzej niż myślałem. Napisałem wcześniej, że arkusz i funkcja działa, ale jednak nie. Próba zmiany zawartości jakiejkolwiek komórki, do której odwołuje się funkcja wywala #NAZWA? tam, gdzie wcześniej był wynik
Re: zgubiona własna funkcja
: pn lip 21, 2025 10:36 pm
autor: Jermor
Prawdopodobnie funkcję umieściłeś w kontenerze "Moje okna dialogowe i makra", a ten kontener zapisywany jest z parametrami użytkownika. Należałoby dotrzeć do tamtego komputera lub pełnej kopii systemu tego starego komputera.
Własne funkcje zapisywane są, w przypadku systemu Windows, w C:\Users\użytkownik\AppData\Roaming\LibreOffice\4\user\basic\nazwa biblioteki
Re: zgubiona własna funkcja
: wt lip 22, 2025 11:44 am
autor: AdamTko
Niestety, tamtego komputera już nie ma. Czyli lipa.
Jako ciekawostkę wrzucam przykładowe wywołanie tej brakującej funkcji,
=pkt_przec_skorygowany_poprawiony(F28;G28;H28;I28;J28;K28;L28;M28;N28;O28;P28;Q28;R28;S28;T28;U28; $L$25;$U$25;$L$26;$U$26; $AA$5;$AA$9;$AC$8;$AF$9;$AH$8; 1)
@Jermor A na przyszłość, gdyby miała mi się zdarzyć podobna sytuacja - jest możliwość zapisania własnej funkcji wraz z dokumentem?
Re: zgubiona własna funkcja
: wt lip 22, 2025 12:31 pm
autor: Jermor
- Funkcję zawsze można zapisać razem z dokumentem. Wówczas będzie dostępna tylko w tym dokumencie. Należy też pamiętać o tym, aby tak ustawić opcje bezpieczeństwa, by funkcja mogła się wykonać. O tworzeniu własnych funkcji napisałem tutaj: https://yestok.pl/lbo/y61.php.
- Warto także napisane makro zapisać sobie w oddzielnym pliku. To można zrobić w module edytora Basic poleceniem "Plik -> Eksportuj Basic...". To polecenie eksportuje do pliku wszystkie makra znajdujące się w aktywnym module.
- Można także wykorzystać Organizator makr "Narzędzia -> Makra -> Zarządzaj makrami -> Basic -> Organizator...".
W oknie dialogowym jak poniżej wskazać, o jaki kontener chodzi a poniżej o jaką bibliotekę.

- obraz_2025-07-22_122734728.png (14.57 KiB) Przejrzano 521 razy
Organizator blokuje jednak możliwość wyeksportowania bibliotek z kontenera "Makra i okna dialogowe aplikacji" oraz bibliotek o nazwie "Standard" z kontenera "Moje okna dialogowe i makra" i kontenera makr w dokumencie.
Ale pozwala na zaimportowanie bibliotek do tych dwóch ostatnich kontenerów.
Re: zgubiona własna funkcja
: wt lip 22, 2025 12:54 pm
autor: Jermor
Co do samej zagubionej funkcji. Jeżeli wymagała ona jako parametru 16 kolejnych komórek z wiersza, to można taki parametr podać w postaci F28:U28, natomiast w ciele funkcji sprawdzić, czy pierwszy przekazany argument jest tablicą, czy składa się z jednego wiersza i 16 kolumn i wymagane wartości pobierać już jako elementy tablicy. Znacznie uprościłoby to wstawianie funkcji do arkusza.
Re: zgubiona własna funkcja
: czw lip 24, 2025 8:16 pm
autor: AdamTko
Dla mnie jawne przywołanie konkretnych komórek było czytelniejsze, chociaż z technicznego punktu widzenia zapewne nie optymalne, tak jak piszesz.