Formanty w Arkuszu Calc.

Uwaga: przeglądasz tę stronę na urządzeniu o niewielkim ekranie (szerokość < 640px). Niektóre zamieszczone w artykule ilustracje i animacje mogą stać się nieczytelne po dopasowaniu ich do rozdzielczości tego ekranu.

Yestok.pl

Jerzy Moruś

© Wszystkie prawa zastrzeżone. Wykorzystanie całości serwisu lub jego fragmentów bez pisemnej zgody autora zabronione.

Formanty w arkuszu kalkulacyjnym Calc.



Opracowanie powstało z wykorzystaniem wersji oprogramowania istniejącej w trakcie jego pisania. Był to LibreOffice 7.4.7.


W środowisku informatycznym formant to zupełnie inna kategoria znaczeniowa niż ta opisana w słownikach, wiążących ten termin ze słowotwórstwem. Dla nas są to pewne komponenty oprogramowania, mające postać graficzną, służące do tworzenia formularzy, rozumianych jako zdefiniowany interfejs między użytkownikiem a bazą danych. Dlatego związane są najbardziej z programem Base. Komponenty te można jednak umieszczać w dowolnych programach pakietu, a więc we Writerze, Calcu, Draw czy Impress. W większości przypadków ich wykorzystanie wymaga napisania makr. W innych środowiskach takie komponenty nazywane są kontrolkami, co wydaje mi się bardziej odpowiednim określeniem. Skoro jednak twórcy LibreOffice i Apache OpenOffice konsekwentnie stosują nazwę „formant”, to przy niej pozostanę i postaram się je omówić dla użytkowników arkusza kalkulacyjnego Calc.

Dla większości użytkowników Calc-a są to obiekty tajemnicze i rzadko wykorzystywane. Sądzi się i nie jest to niezgodne z prawdą, że korzystanie z formantów wymaga znajomości programowania. Jednak istnieje pewna grupa formantów, które mogą zostać wykorzystane w tworzonym arkuszu kalkulacyjnym bez konieczności oprogramowania tego elementu. O takich właśnie formantach chcę napisać.


Czym są formanty formularza?

W aplikacjach (x)Office noszą one oficjalną nazwę: formanty formularza. Do „zarządzania” tymi elementami przygotowano dwa paski narzędziowe: „Formanty formularza” i „Projekt formularza”. Poniżej znajdują się ilustracje obu pasków w LibreOffice i w Apache OpenOffice, w tym ostatnim pasek „Formanty” umożliwia wywołanie kolejnych formantów poprzez wywołanie paska „Więcej formantów”.

Formanty formularza LibreOffice. Projekt formularza LibreOffice.
Rys. 1: Paski narzędzi w LibreOffice (w. 7.4.7)
Formanty w Apache OpenOffice. Projekt formularza w Apache OpenOffice.
Rys. 2: Paski narzędzi w Apache OpenOffice (w. 4.1.14)

Każdy z pokazanych formantów może zostać wstawiony do arkusza kalkulacyjnego, wystarczy kliknąć wybrany formant, a następnie „wyrysować” go w arkuszu analogicznie jak wstawianie kształtu. Jednak tylko niektóre z formantów dadzą się wprost wykorzystać w naszym projekcie.

Formanty ze swej natury są elementami graficznego interfejsu między arkuszem kalkulacyjnym a użytkownikiem i z zasady obsługiwane za pomocą myszki jednak możliwa jest także „obsługa” poprzez klawiaturę.

Każdy formant wstawiany do dokumentu otrzymuje automatycznie własną nazwę złożoną z nazwy formantu i następującej po niej liczby informującej, który to jest formant tego typu. Nazwy te użytkownik może zmieniać, tak aby odzwierciedlały one znaczenie danego formantu. Nazwy formantów mają podstawowe znaczenie podczas tworzenia programu (makra) obsługującego formanty. W tym opracowaniu nie będę się tym zajmował, ale warto wiedzieć, że dzięki tej metodzie każdy wstawiany formant ma swoją indywidualną nazwę, nawet jeśli użytkownik zapomni o jej nadaniu. Jest jedna sytuacja, kiedy automatyczne nadawanie nowych nazw nie zadziała, to przypadek, gdy autor po utworzeniu formantu (który automatycznie otrzymał nazwę), kolejne, takie same, tworzy poprzez skopiowanie tego pierwszego. Wszystkie kopie otrzymują nazwę oryginału i należałoby je, jeśli jest to potrzebne, pozmieniać. Formanty zastosowane bezpośrednio w arkuszu Calc, a o takich będę pisał, nie muszą mieć indywidualnej nazwy, chociaż nadanie jej jest przydatne podczas zarządzania formantami (wśród kilku formantów o jednakowej nazwie i przeznaczeniu, np. „Przycisk opcji”, trudno zorientować się który, za co odpowiada).

Dwa słowa co do tworzenia formantów. Napisałem już we wprowadzeniu do tematów dotyczących LibreOffice o zaprzestaniu uwzględniania wersji Apache OpenOffice, jednak dopisuję wyjaśnienie dla użytkowników tego pakietu. W Apache OpenOffice (wersja 4.1.14) do wstawania formantów służy wyłącznie pasek narzędzi „Formanty”, ewentualnie uzupełniająco pasek „Więcej formantów”. LibreOffice oprócz interfejsu graficznego udostępnia polecenia „Wstaw → Formant formularza → …” oraz „Narzędzia → Formularze →...”, które udostępniają opcje związane z projektem formularza.

Na pasku narzędzi jedna z ikonek to biała strzałka nachylona w lewo, w podpowiedzi po naprowadzeniu wskaźnika myszki na tę ikonkę pojawia się słowo „Zaznacz”. Nie jest to symbol żadnego formantu, ale akcja wywołana tą ikoną może być przydatna. Dotyczy to sytuacji, gdy chcemy zaznaczyć kilka formantów, np. w celu wyrównania ich położenia. Działa to w taki sam sposób jak przy obsłudze rysunków (na tamtym pasku też jest ta ikonka) i służy do zaznaczenia wszystkich formantów, które znajdą się w całości wewnątrz zakreślonego prostokąta. Zwykły sposób zaznaczenia kilku formantów to klikanie każdego kolejnego z naciśniętym klawiszem SHIFT.

Dla arkuszy z formantami wyróżnia się dwa tryby pracy. Tryb projektowania, w którym definiuje się formant, ustala lub modyfikuje jego właściwości i sposób działania. W tym trybie można dodać do arkusza nowy formant albo zaznaczać inne formanty i dokonywać ich modyfikacji. Drugi tryb to tryb użytkownika, w którym formant pełni swoją funkcję wykonawczą. W tym drugim trybie kliknięcie formantu uaktywnia jego funkcję. Tryby te ustala się, klikając ikonkę prezentującą ekierkę, linijkę i ołówek, drugą w pierwszej linii ikon „Formantów formularza” (wyświetlaną podpowiedzią jest „Tryb projektu”). W LibreOffice można to zrealizować także poleceniem „Narzędzia → Formularze → Tryb projektu”. Oba te sposoby na przemian włączają lub wyłączają tryb projektu. Gdy tryb projektu jest włączony, symbol ikonki jest wyróżniony tłem.

Z tymi dwoma trybami związana jest jeszcze jedna opcja znajdująca się w pasku narzędzi „Projekt formularza” a w LibreOffice także w poleceniu „Narzędzia → Formularze → Otwórz w trybie projektu”. Ważne jest, aby o niej wiedzieć, gdyż decyduje ona zawsze, w jakim trybie zostanie uruchomiony skoroszyt Calca. Ta opcja jest przypisana do skoroszytu, a nie do programu Calc i jeśli dokument został zapisany z włączoną opcją, to każde jego otwarcie ustawia formanty w trybie projektu. Ma to znaczenie dla projektów przekazanych do użytkowania osobom nieobeznanym z arkuszami kalkulacyjnymi. W momencie, gdy zechcą kliknąć formant, zamiast oczekiwanego działania zobaczą ten formant jako zaznaczony obiekt graficzny.


Właściwości formantów.

Po zaznaczeniu formantu, a przypominam, że można to zrobić tylko w trybie projektu, można nadać mu właściwości i określić powiązania z naszym arkuszem. Kliknięcie formantu prawym przyciskiem myszki otwiera menu kontekstowe formantu, takie jak na ilustracji poniżej.

Wywołanie właćiwości formantu.
Rys. 3: Menu kontekstowe formantu.

Ramką wyróżniłem najważniejszą pozycję: „Właściwości formantu…”. Przylega ona bezpośrednio do podobnie brzmiącej: „Właściwości formularza…”, co sprawia, że łatwo można wywołać niewłaściwą opcję.

Zanim przedstawię właściwości formantu, omówię inne przydatne opcje występujące okienku:

Wywołanie właściwości formantu otwiera dedykowane dla konkretnego rodzaju formantu okno dialogowe.

Dla większości formantów okno zawiera trzy zakładki opisujące i definiujące formant. Nazywają się one: „Ogólne”, „Dane” i „Wydarzenia”. Zakładka „Ogólne” służy do zdefiniowania podstawowych właściwości formantu. Lista właściwości zależy od wybranego formantu, choć wiele z tych właściwości jest wspólnych dla różnych formantów. Poniżej przykład zakładki „Ogólne” dla formantu „Przycisk opcji”. Ilustracja ze względu na wysokość okienka dialogowego została podzielona na dwie części.

Zakładka "Ogólne" właściwości "Przycisku opcji".Zakładka "Ogólne" właściwości "Przycisku opcji".
Rys. 4: Okno dialogowe zakładki „Ogólne” we właściwościach formantu „Przycisk opcji”.

Opis wszystkich pozycji z zakładki „Ogólne”, dla wszystkich formantów, można znaleźć w helpie LibreOffice na tej stronie https://help.libreoffice.org/7.4/pl/text/shared/02/01170101.html [dostęp: 12.06.2023]. Autorzy omawiają te parametry przede wszystkim w aspekcie oprogramowania formantów i zastosowań bazodanowych.

Zakładka, „Wydarzenia”, jest przeznaczona na skojarzenie formantu z makrem, przy czym należy w niej wskazać rodzaj wydarzenia, które zainicjuje wykonanie makra. Tym aspektem nie będę się zajmował, gdyż – jak napisałem już wcześniej – chcę omówić wykorzystanie formantów bez stosowania makr.

Z punktu widzenia zastosowań, jakie chcę omówić, znaczenie ma zakładka „Dane” a w szczególności to, czy występuje w niej opcja „Komórka połączona”. Jeżeli taka opcja istnieje, to formant jest w stanie przekazać informację o wykonaniu działania do konkretnej komórki arkusza. Przykład tej zakładki dla „Przycisku opcji”, poniżej.

Zakładka "Dane" formantu "Przycisk opcji".
Rys. 5: Okno dialogowe zakładki „Dane” we właściwościach formantu „Przycisk opcji”.

„Komórka połączona” informuje, w jakim miejscu arkusza pojawi się wynik akcji wykonanej na formancie. Do określenia tej komórki można wykorzystywać tylko jej adres (nie można wykorzystać nazw nadanych komórkom), a więc tak jak na ilustracji adres w postaci „B1”. Gdy wynik zadziałania formantu ma pojawić się w komórce znajdującej się w innym arkuszu, adres należy wpisać w postaci „’Nazwa arkusza’.B1”. Gdy nazwa arkusza nie może zostać jednoznacznie zinterpretowana, zawiera spacje i znaki specjalne, albo jest liczbą, należy ją ująć w pojedyncze apostrofy, tak jak przytoczyłem to powyżej (tu nazwa arkusza zawiera spację). W przypadku podawania adresu nie ma niestety możliwości wskazania go myszką, tak jak to jest w innych oknach dialogowych. Wartości wprowadzane do komórki przez działanie formantu ignorują ochronę komórek. Oznacza to, że jeśli komórka połączona jest chroniona i jednocześnie została włączona ochrona arkusza, to użytkownik nie może niczego wpisać z klawiatury do tej komórki, natomiast dane przekazane przez formant będą w niej umieszczane.

Calc potrafi właściwie zareagować na przeniesienie komórki połączonej albo innych zdefiniowanych adresów w inne miejsce i przeadresuje ten parametr, dlatego można najpierw lokować komórkę połączoną lub inne wymagane zakresy danych w tym samym arkuszu, aby przetestować działanie formantu, a dopiero później metodą „Wytnij i wklej” przenieść je w wymagane miejsce. Uzupełnienie adresu komórki o nazwę arkusza z apostrofami, jeśli będą niezbędne, wykona wówczas automatycznie Calc.

Spośród wszystkich formantów komórkę połączoną mają:

  1. Pole wyboru.
  2. Przycisk opcji.
  3. Pole listy.
  4. Pole kombi.
  5. Przycisk pokrętła.
  6. Pasek przewijania.
  7. Pole tekstowe.
  8. Pole liczbowe.
  9. Pole sformatowane.

Dodatkowymi formantami, które należy znać, są: „Etykieta” i „Pole grupy”. Oba nie wykonują żadnej akcji, mają charakter opisowy i wspomagają organizację formantów.


Aktywowanie formantu.

Każdy formant może zostać użyty przez kliknięcie myszką. Formanty takie jak „Przycisk opcji”, czy „Pole wyboru” zostaną aktywowane i zmienią swój stan, inne pola będą oczekiwały na dalsze działanie (np. „Pole listy” – na wskazanie pozycji), jeszcze inne wykonają akcję (np. „Przycisk pokrętła”). Ten sposób korzystania z formantów jest powszechnie stosowany i nie wszyscy wiedzą, że formanty można także aktywować i wykorzystywać, używając klawiatury. A wiedza ta przydać się może, gdy nagle myszka odmówi posłuszeństwa, albo gdy większość działań realizujemy z klawiatury i aby coś wykonać za pomocą formantu musimy chwycić myszkę, naprowadzić ją na formant i użyć go, co zabiera czas i zmienia rytm pracy.

Aby móc korzystać z klawiatury, formant musi być najpierw uaktywniony lub jak to się nazywa w terminologii informatycznej – musi otrzymać fokus. Kliknięcie formantu zazwyczaj aktywuje formant, ale są takie formanty, które nie zostaną aktywowane, a tylko wykonają działanie. Należy do nich np. wspomniany „Przycisk pokrętła”. Przy pomocy klawiatury można „obsłużyć” tylko formant aktywny.

Formant zostanie aktywowany (albo otrzyma fokus) po zastosowaniu charakterystycznego dla konkretnego formantu skrótu klawiaturowego, Lewy ALT+ wybrany znak. Znak wybiera projektant arkusza i nie musi to być litera. Jeśli wybrano literę, to ten skrót klawiaturowy ma pierwszeństwo przed ewentualnie istniejącym już skrótem klawiaturowym arkusza. Np. standardowo Lewy ALT+o otwiera menu polecenia „Format”, jeśli litera „o” zostanie wybrana dla formantu, to ten skrót aktywuje formant, a nie polecenie „Format” (tak przy okazji, litera „o” została przypisana także do polecenia „Okno”, którego w związku z tym nie można wywołać skrótem klawiaturowym).

Każdy formant, który we właściwościach, w zakładce „Ogólne”, ma opcję „Etykieta” (jak widać to na rys.4) – a takimi formantami w naszym zestawie są „Pole wyboru”, „Przycisk opcji”, „Pole Etykiety” i „Pole grupy” – może mieć bezpośrednio przypisany skrót klawiaturowy. Wybrany znak dla tego skrótu wskazuje się w tekście wpisanej etykiety, przez poprzedzenie go znakiem „~” (tylda). Gdy zatem treść etykiety wyglądałaby następująco: „Zat~wierdź, gdy udzielasz zniżki.”, wybranym znakiem będzie litera „w” i formant otrzyma fokus po użyciu skrótu klawiaturowego Lewy ALT+w. W treści etykiety na ekranie znak tyldy nie będzie widoczny, natomiast znak nią poprzedzony będzie podkreślony, sygnalizując tym samym to, że można go użyć w skrócie klawiaturowym.

Napisałem wcześniej, że „Pola etykiety” i „Pola grupy” nie wykonują żadnych akcji, więc pojawia się pytanie, po co przypisywać im skrót klawiaturowy?

Najpierw zauważę, że wszystkie pozostałe formanty nie mają opcji „Etykieta”, więc nie można im przypisać skrótu klawiaturowego. Otóż skrót klawiaturowy przypisany do pola grupy lub pola etykiety aktywuje ten formant, który został zdefiniowany jako następny po tym polu. Należy to zdanie rozumieć dosłownie, bo nie ma znaczenia czy oba te formanty znajdują się obok siebie i w jakiej kolejności wizualnie są widoczne w arkuszu. Liczy się to, w jakiej kolejności zostały utworzone. W Calcu nie ma możliwości zmiany kolejności formantów już utworzonych, więc należy tak zaprojektować ich powstawanie, aby zachować wymaganą kolejność. Jeśli o tym zapomnimy, np. tworząc „Pole listy”, to musimy najpierw usunąć już utworzone pole, następnie wstawić pole etykiety, ponownie pole listy i dopiero wtedy przypisać wymagany znak.

Jeśli pole etykiety ma charakter wyłącznie opisowy, to nie ma znaczenia, w którym momencie zostało utworzone.

Uwaga co do wstawiania tyldy w systemie Windows (nie wiem, czy dotyczy to także innych systemów i innych języków). Znak ten wstawia się klawiszem oznaczonym jej symbolem. Naciśnięcie klawisza nie wstawia jednak od razu tego symbolu, gdyż klawisz ten ma w systemie funkcję dodawania symbolu diakrytycznego do liter, więc po jego naciśnięciu należy nacisnąć następny klawisz. Jeśli będzie nim spacja, zostanie wstawiona pojedyncza tylda. Jeśli będzie to inny znak, zostanie wstawiona tylda i ten inny znak. Jeśli ten inny znak ma w systemie odpowiednik z symbolem diakrytycznym, to zostanie wstawiony tylko ten odpowiednik. Podsumowując, wpisanie sekwencji np. „~”+litera p – wstawi „~p”, natomiast sekwencji „~”+litera a – wstawi pojedynczą literę „ą”.

Oczywiście poprzedzenie polskiej litery tyldą jest możliwe i zostanie ona przypisana do skrótu klawiaturowego. Jednak wobec powszechnego w Polsce stosowania klawiatury w układzie programisty (w którym polskie litery uzyskuje się z przytrzymanym prawym klawiszem ALT) wywołanie takiego skrótu jest niemożliwe.

Przy pomocy powyższej metody można zatem przypisać skrót klawiaturowy do każdego formantu i w związku z tym taki format aktywować.

Istnieje także inny sposób aktywowania formantów. Wymaga on pewnego przygotowania całego projektu. Wszystkie formanty z wyjątkiem „Pola etykiety” i „Pola grupy” mają we właściwościach w zakładce „Ogólne” parametr „Tabulator” (także widoczny na rys. 4.). Parametr ten zazwyczaj domyślnie jest ustawiony na „Tak”, jednak nie we wszystkich formantach. Wartość „Tak” oznacza, że formant może być aktywowany po oznaczeniu go klawiszem tabulatora. Aby to było możliwe, musi być już aktywny jakikolwiek formant.

Dlaczego tak jest? Otóż formanty, a także inne obiekty graficzne, np. kształty, nie znajdują się bezpośrednio w warstwie arkusza. Znajdują się na oddzielnej, możemy powiedzieć przeźroczystej warstwie nałożonej na warstwę arkusza. W podstawowej warstwie arkusza klawisz tabulatora przenosi zaznaczanie komórki aktywnej. W warstwie graficznej pozwala zaznaczać obiekty graficzne. Dlatego konieczne jest aktywowanie jakiegoś formantu, aby znaleźć się tej graficznej warstwie.

Oprócz parametru „Tabulator” formanty mają jeszcze jeden parametr związany z jego działaniem, jest nim „Kolejność aktywacji”. Parametr ten, to liczba porządkowa określająca kolejność aktywowanie formantów. Podczas tworzenia formantów liczba ta wynosi 0, ale formanty są uporządkowane domyślnie w kolejności ich tworzenia. Przypisując konkretne wartości, można wskazać, w jakiej kolejności mają być faktycznie aktywowane. Po prawej stronie definiowania tego parametru znajduje się przycisk, który pozwoli nam zobaczyć i ewentualnie zmienić kolejność aktywacji. Przykład dotyczący trzech formantów przedstawia ilustracja poniżej.

Kolejność aktywowania formantów.
Rys. 6: Okno ustalania kolejności aktywowania formantów.

Po czym poznać, że formant jest aktywny? Formanty, które służą do wpisania wartości, takie jak „Pole liczby”, „Pole tekstowe”, czy „Pole kombi” będą zawierały mrugający kursor, zapraszający do dokonania wpisu. Pozostałe formanty swą aktywność prezentują kropkowanym obramowaniem własnej etykiety (dla „Pola wyboru” i „Pól opcji”, będzie to widać w prezentacji poświęconej tym polom) albo swojego kształtu. Poniżej na ilustracji zaznaczenie aktywnego przycisku pokrętła.

Aktywny przycisk pokrętła.
Rys. 7: Aktywny „Przycisk pokrętła” (aktywny jest prawy przycisk strzałki).

Pozostaje ostatnie pytanie, jak wrócić do warstwy arkusza? Zwykły sposób, to po prostu kliknięcie dowolnego miejsca w arkuszu. Gdy jednak nie mamy sprawnej myszki, to powrót do pracy na arkuszu realizuje skrót klawiaturowy CTRL+F6.


Pole grupy.

Pole grupy

Formant „Pole grupy” niczego nie wykonuje. Służy do objęcia ramką innych formantów lub elementów w arkuszu, które chcielibyśmy jakoś oznaczyć. Prezentowany jest tylko jako ramka, bez możliwości ustawiania tła, czy grubości albo koloru krawędzi. Zawiera opcję „Etykieta”, w której można wpisać krótki opis, a wybrany znak może być użyty do ustawienia fokusu w kolejnym zdefiniowanym formancie.


Pole etykiety.

Pole etykiety.

Pole etykiety przeznaczone jest do tego, aby podać użytkownikowi informację o formancie. Ten formant, tak jak i formant „Pole grupy” nie wykonuje żadnego działania, ale w parametrze „Etykieta” można wprowadzić opis wyjaśniający role formantów lub znaczenie konkretnego formantu. Jeden ze znaków opisu może zostać wybrany do aktywowania formantu.


Pole wyboru.

Pole wyboru.

„Pole wyboru” zawiera wskaźnik (niewielki kwadracik), który informuje o stanie pola, czyli czy jest włączone (wtedy zawiera symbol krokiewki) czy niewłączone (kwadracik jest pusty). Obok wskaźnika znajduje się etykieta, w której użytkownik może krótko wyjaśnić rolę formantu. Aby zmienić stan pola, wystarczy kliknąć myszką wskaźnik lub obszar treści etykiety, nie trzeba trafiać w pole wskaźnika. Gdy formant jest uaktywniony, a symbolizuje to kropkowana ramka obejmująca treść etykiety, zmianę stanu pola wyboru można realizować, naciskając klawisz spacji. Formant może mieć dowolną wielkość, lecz rozmiar wskaźnika nie jest skalowalny.

„Pole wyboru” ma taki sam zestaw ustawień w zakładce „Dane” jak „Przycisk opcji” (rysunek 5.).

Wpisanie adresu komórki połączonej sprawi, że jej wartością będzie logiczna wartość PRAWDA (gdy pole jest zaznaczone) lub FAŁSZ (gdy pole jest puste).

„Pole danych” i „Wymagany jest wpis” dotyczą powiązania z bazą danych, a to wykracza poza tematykę tego opracowania.

Dostępne są także dwa dodatkowe ustawienia, które mogą zmodyfikować zawartość komórki połączonej. Jednak ich użycie wymaga dodatkowego wyjaśnienia.

„Wartość odwołania (wł.)” pozwala wpisać dowolny tekst, który ma się pojawić w komórce połączonej wtedy, gdy pole wyboru jest w stanie „włączony”.

„Wartość odwołania (wył.)” pozwala wpisać tekst, który pojawi się w komórce połączonej wtedy, gdy pole wyboru jest w stanie „wyłączony”.

Te dwa parametry są zawsze traktowane jak czysty tekst. Nie można zatem wstawić tu odwołania do innej komórki. Liczby także są traktowane jak tekst i jako taki są umieszczane w komórce połączonej. Calc potrafi przekształcić taką liczbę na wartość i wykorzystać ją w obliczeniach pod warunkiem, że jest to liczba całkowita. Jeśli więc wartość liczbowa miałaby zostać wykorzystana w obliczeniach bezpieczniej jest przekazać ją do obliczeń z wykorzystaniem funkcji WARTOŚĆ().

Można wykorzystać tylko dwa układy tych dodatkowych parametrów:

Jeżeli zostanie podany wyłącznie parametr „Wartość odwołania (wył.)”, komórka połączona zachowuje się tak, jakby nie określono tych parametrów i przyjmuje wartości PRAWDA lub FAŁSZ.

Dla tego formantu istnieje możliwość przypisania trzeciego stanu, nazywanego stanem nieokreślonym. Decyduje o tym parametr "Potrójny stan" w zakładce "Ogólne". Gdy zostanie wybrany wówczas jego wskaźnikiem jest pozioma kreseczka (w Apache OpenOffice wyszarzana krokiewka), a w komórce połączonej pojawia się wartość #N/D. Zwracam uwagę na to, że #N/D nie jest tekstem, ale wartością, która w Calcu (w formułach) jest wynikiem informującym o niemożliwości znalezienia rozwiązania, więc musi być testowana funkcją CZY.BŁĄD() albo CZY.BRAK().

W związku z możliwością korzystania z trzech stanów tego formantu, w parametrze "Stan domyślny" oprócz możliwości wyboru "Wybrano" i "Nie wybrano" występuje jeszcze pozycja "Nie zdefiniowano".


Zastosowanie „Pola wyboru” przedstawię w prezentacji. Nie jest specjalnie wyszukana. Ma pokazać jak – wykorzystując ten formant – można przyznać zniżkę zakupową tylko tym towarom, których wartość zakupu po cenie nominalnej przekracza 100.

Już po przygotowaniu prezentacji zorientowałem się, że widz zauważy, iż jeszcze przed dodaniem formantu decydującego o przyznaniu zniżki, te już są przyznane. Stało się tak z dwóch powodów. Pierwszy wynika z tego, że formuła decydująca o zniżce odwołuje się do komórki A1, która dopiero będzie komórką połączoną i w tym momencie jest jeszcze pusta. Ta formuła występuje w kolumnie E i w komórce E2 ma następującą postać: =I($A$1;D2*F2>100)*10%. Funkcja I() bada czy w komórce A1 znajduje się PRAWDA oraz, czy wartość towaru sprzedanego po cenie nominalnej jest większa od 100. Okazuje się, że jeżeli komórka będąca argumentem funkcji jest pusta, nie jest uwzględniana w obliczeniu wyniku tej funkcji, więc o wyniku decydują pozostałe argumenty. Jeśli pozostałe argumenty są także puste, wynikiem funkcji będzie błąd #ARG!. W przypadku tej formuły wyrażenie D2*F2>100 zawsze zwróci jakiś wynik, w tym przypadku iloczyn jest większy od 100, więc funkcja I() zwróciła wartość PRAWDA a cała formuła – 10%.

Po wstawieniu formantu rolę zaczął odgrywać drugi powód. We właściwościach „Pola wyboru”, pozostawiłem nienaruszony parametr „Stan domyślny”. Miał on w tym momencie wartość „Nie wybrano”. Lecz jeśli taka wartość miała pozostać, należało zmienić stan na „Wybrano” i ponownie na „Nie wybrano”, a tego nie zrobiłem. Bez tego działania komórka połączona nadal pozostawała pusta, bo samo wyświetlenie okna dialogowego nie zmieniło jej stanu i dopiero pierwsze kliknięcie formantu zmieniło ten stan. Oczywiście po tym pierwszym kliknięciu dalsze funkcjonowanie nie wymaga żadnych interwencji.

Oto wspomniana prezentacja


Przycisk opcji.

Przycisk opcji.

Formant „Przycisk opcji” zawiera wskaźnik (niewielki okrąg) informujący o tym, czy przycisk został użyty (okrąg wypełnia wówczas czarne kółko), czy jest wyłączony (okrąg jest pusty). Istotą tego formantu jest to, że nie może występować pojedynczo. Muszą wystąpić przynajmniej dwa takie formanty. Użycie (włączenie) przez użytkownika jakiegokolwiek przycisku powoduje automatyczne wyłączenie dotychczas włączonego. Taka jest idea opcji, że można wybrać tylko jedną z wielu możliwości. Gdy dowolny z tych formantów jest aktywny, to klawisze strzałek z klawiatury pozwalają aktywować następny lub poprzedni formant należący do tego zestawu opcji, zmieniając jednocześnie stan tego formantu na „włączony”. Ponieważ tego typu formanty mogą zostać zastosowane w dokumencie do wybierania jednocześnie opcji różnego rodzaju, przyciskom dotyczącym konkretnego rodzaju należy przypisać nazwę grupy, która identyfikuje ten rodzaj. Np. w tym samym arkuszu chcemy umożliwić wybór zniżki 5%, 10%, 15% i 20% i jednocześnie w innym miejscu wybór np. odzież damska, odzież męska, odzież dziecięca.

Okno dialogowe właściwości tego formantu, pokazane na rys. 4, zawiera pozycję „Nazwa grupy”. Tutaj wpisuje się wspólną nazwę dla przycisków, które będą „obsługiwały” jedną grupę opcji.

W Apache OpenOffice taka pozycja nie występuje i grupowanie przycisków opcji uzyskuje się przez nadanie tym przyciskom takiej samej nazwy (ten sposób działa także w LibreOffice).

Każdemu przyciskowi opcji można przypisać komórkę połączoną, ale ze względu na charakter funkcjonowania formantów tego typu, przypisuje się grupie formantów tę samą komórkę, natomiast w każdym formancie podaje się wartość pozycji „Wartość odwołania (wł.)” właściwą dla danego formantu. Pozycji „Wartość odwołania (wył)” nie wypełnia się.

Oczywiście i w tym formancie można nie wykorzystywać możliwości „Wartość odwołania”, jednak wówczas dla każdego formantu przypisać trzeba własną komórkę połączoną, i na podstawie ich stanu określić, który z przycisków opcji jest włączony.

Bardzo często przyciski opcji stanowiące jedną grupę, obejmowane są polem grupy. Nie jest to jednak obowiązek, a raczej wskazówka dla użytkownika, że te przyciski odnoszą się do wyboru jednej z możliwości.


Pole listy.

Pole listy.

Pokazany powyżej wygląd pola listy jest domyślnie wstawiany do arkusza kalkulacyjnego. Do tego pola można „podpiąć” listę, która pojawi się w rozwijalnej części tego formantu. W zakładce „Dane” okna właściwości tego formantu, oprócz wskazania komórki połączonej należy określić jeszcze dwa parametry. Pierwszy to określenie obszaru listy. Wskazany obszar może być obszarem wielokolumnowym, ale wyświetlaną listę stanowi tylko pierwsza kolumna tego obszaru. Drugi to wybór tego, jaki rodzaj wyniku ma się pojawić w komórce połączonej a dokładniej czy ma to być wybrany wpis, czy pozycja tego wpisu na liście. Wybór pozycji na liście narzuca komórce połączonej format liczbowy, liczba jest jednocześnie numerem wiersza w tabeli listy, może zatem zostać użyta wprost jako argument funkcji INDEKS().

We właściwościach formantu znajdują się ponadto opcje charakterystyczne dla tego formantu, oto one:

Formant po aktywowaniu go skrótem klawiaturowym lub klawiszem tabulatora ma zaciemniony obszar pola. Klawisze strzałek (w górę, w dół) powodują pojawianie się kolejnych pozycji z listy wyboru. Naciśnięcie skrótu klawiaturowego ALT+strzałka w dół rozwinie listę pozycji.

Wygodną cechą tego formantu jest to, że gdy jest aktywny, można nacisnąć klawisz z pierwszym znakiem poszukiwanego wpisu, a lista przewinie się do pierwszej znalezionej pozycji zaczynającej się tym znakiem. Kolejne naciśnięcia tego samego klawisza będą przewijały listę do następnego pasującego wpisu. Osoby biegle posługujące się klawiaturą będą w stanie wpisać kilka pierwszych znaków, do których dopasuje się znaleziona pozycja. Ta cecha przydaje się przy długich i nieuporządkowanych listach.


Pole kombi.

„Pole kombi” ma taki sam wygląd jak pole listy. Z punktu widzenia wykorzystywania tego pola w arkuszu, różnice w stosunku do „Pola listy” polegają na tym, że w zakładce „Dane” nie ma możliwości wyboru rodzaju wyniku zwracanego do komórki połączonej. Zawsze jest to tekst wybrany w polu, wynika to z tego, że do pola można wprowadzić własny wpis i to on zostanie wówczas umieszczony w komórce połączonej.


Przycisk pokrętła.

Przycisk pokrętła.

Formant umieści w komórce połączonej liczbę całkowitą wynikająca z kolejnych kliknięć jednego z dwóch przycisków. Po osiągnięciu granicznej wartości przycisk który ją wygenerował staje się nieaktywny.

Jeśli formant jest aktywny, zmiany wartości można uzyskać klawiszami strzałek.

Działanie tego formantu ustala się we właściwościach, w zakładce „Ogólne” i są to:

Ponadto można ustalić tło formantu i kolor wskaźników.

Wykorzystanie tego formantu zależy wyłącznie od inwencji autora arkusza.


Pasek przewijania.

Pasek przewijania.

Podobnie jak poprzedni formant przekazuje liczbę całkowitą, a w zakładce „Dane” można jedynie wskazać komórkę połączoną. Do zmiany wartości liczby można wykorzystywać: skrajne przyciski (tzw. mała zmiana), przeciąganie suwaka lub klikanie w obszarze paska między suwakiem a jednym ze skrajnych przycisków (tzw. duża zmiana).

We właściwościach formantu można ustalić:

Ponieważ działanie formantu jest podobne do działania przycisku pokrętła, nie przygotowywałem dedykowanej mu prezentacji.


Pole tekstowe, Pole liczbowe, Pole sformatowane.

.

Pozostałe trzy formanty, „Pole tekstowe”, „Pole liczbowe” i „Pole sformatowane” nie wydają się szczególnie przydatne przy wprowadzaniu danych, gdyż w arkuszu kalkulacyjnym wbudowana jest funkcjonalność „Poprawność danych”, która zapewnia kontrolę nad prawidłowością wpisywanych informacji. Jednak pola te mogą być przydatne jako elementy „zwracające” wyniki. W przypadku formantów zasadą bowiem jest, że komórka połączona funkcjonuje w „dwie strony”, to znaczy, że akcja na formancie zmienia zawartość komórki połączonej, ale także zmiana zawartości komórki połączonej zmieni stan formantu. W tej sytuacji można formantom nadać właściwość „Tylko do odczytu”, co sprawi, że żadnej wartości nie będzie można wprowadzić, natomiast do komórki połączonej można wstawiać wyniki (wpisać formułę), co będzie skutkowało zmianami zawartości formantu.

Eksperymenty w tym zakresie pozostawiam czytelnikom.

We właściwościach „Pola tekstowego” można określić sposób wyświetlania tekstu, decyduje o tym opcja „Typ tekstu”. „Jedna linia” oznacza, że tekst będzie pokazany w jednym wierszu, przy czym pokazane zostanie tylko tyle znaków tekstu, ile zmieści się w szerokości formantu. Tylko przy tym ustawieniu można wybrać wyrównanie tekstu w pionie. Ponadto ten typ tekstu pozwala zastosować znak ukrywania hasła, czyli określić jaki znak ma w polu tekstowym zastępować wprowadzane przez użytkownika znaki. Rzeczywisty tekst znajdzie się w komórce połączonej, natomiast na ekranie zamarkowany będzie wybranym znakiem.

Typ „Wiele linii” oznacza, że tekst po osiągnięciu prawej granicy formantu utworzy automatycznie kontynuację w nowej linii. Takim samym typem jest „Wiele linii z formatowaniem”. Przy tym typie po aktywowaniu pola pojawi się dodatkowy pasek narzędzi pozwalający formatować tekst wewnątrz formantu. Użycie tego typu w arkuszu kalkulacyjnym nie ma sensu, gdyż do komórki połączonej zawsze przekazywany jest tekst niesformatowany. Przy stosowaniu tekstów wielolinijkowych należy wybrać sposób kodowania końca wiersza oraz wybrać czy w obszarze formantu mają zostać pokazane paski przewijania. Dla pola tekstowego można ponadto określić opcję „Maks. Długość tekstu” decydującą o tym ile znaków można wpisać do tego pola. Wartość 0 oznacza, że dowolną.

Pola „liczbowe” i „sformatowane” działają podobnie. We wspólnych właściwościach tych pól można określić dopuszczalną wartość minimalną i maksymalną oraz zadecydować, czy pole będzie zawierało na prawej krawędzi pokrętło, czyli element taki jaki omawiałem przy przycisku pokrętła oraz czy może na nie oddziaływać kółko myszki. Pozostawienie niewypełnionych opcji wartości minimalnej i maksymalnej oznacza, że nie ma limitu wartości.

Dla pola liczbowego można ponadto podać, o jaką wartość ma się zmieniać liczba po użyciu pokrętła lub kółka myszki (ta wartość musi być liczbą całkowitą). Ile miejsc dziesiętnych ma zostać pokazanych i, czy ma zostać zastosowany separator tysięcy.

Dla pola sformatowanego, jak to wynika z jego nazwy, można we właściwościach zdefiniować format (jest to takie samo formatowanie jak formatowanie komórek) oraz ograniczyć długość wprowadzanych danych.