Spreadsheet Workbench/pl

Wprowadzenie
Środowisko pracy Arkusz Kalkulacyjny pozwala tworzyć i edytować arkusze kalkulacyjne, używać danych z arkusza kalkulacyjnego jako parametrów w modelu, wypełniać arkusz kalkulacyjny danymi pobranymi z modelu, wykonywać obliczenia i eksportować dane do innych aplikacji arkuszy kalkulacyjnych, takich jak LibreOffice czy Microsoft Excel.



Przybory

 * Spreadsheet_CreateSheet.svg Utwórz arkusz: tworzy nowy arkusz kalkulacyjny.


 * Spreadsheet_Import.svg Importuj arkusz: wczytuje plik CSV do arkusza kalkulacyjnego.


 * Spreadsheet_Export.svg Eksportuj arkusz: zapisuje pliku CSV na podstawie arkusza kalkulacyjnego.


 * Spreadsheet_MergeCells.svg Scal komórki: łączy wybrane komórki.


 * Spreadsheet_SplitCell.svg Podziel komórkę: rozdziela poprzednio scalone komórki.


 * Spreadsheet_AlignLeft.svg Wyrównaj do lewej: wyrównuje treść wybranych komórek do lewej.


 * Spreadsheet_AlignCenter.svg Wyśrodkuj w poziomie: wyrównuje treść wybranych komórek do środka w poziomie.


 * Spreadsheet_AlignRight.svg Wyrównaj do prawej: wyrównuje treść wybranych komórek do prawej.


 * Spreadsheet_AlignTop.svg Wyrównaj do góry: wyrównanie zawartości wybranych komórek w górę.


 * Spreadsheet_AlignVCenter.svg Wyśrodkuj w pionie: wyrównuje treść wybranych komórek do środka w pionie.


 * Spreadsheet_AlignBottom.svg Wyrównaj w dół: wyrównuje treść wybranych komórek do dołu.


 * Spreadsheet_StyleBold.svg Pogrubienie: ustawia pogrubienie treści wybranych komórek.


 * Spreadsheet_StyleItalic.svg Kursywa: ustawia treść wybranych komórek na kursywę.


 * Spreadsheet_StyleUnderline.svg Podkreślenia: ustawia treść wybranych komórek jako podkreśloną.


 * Spreadsheet_SetAlias.svg Ustaw alias: ustawia alias dla wybranej komórki.


 * Przyciski oraz  ustawia kolory czcionki i tła dla wybranych komórek.

Ustawienia

 * [[Image:Preferences-spreadsheet.svg|32px]] Ustawienia: preferencje dla środowiska pracy Arkusz Kalkulacyjny.

Wstawianie i usuwanie wierszy i kolumn
Wiersze i kolumny można wstawiać i usuwać, klikając prawym przyciskiem myszy nagłówek wiersza lub kolumny i wybierając odpowiednią opcję z menu podręcznego. Możliwe jest zaznaczenie najpierw wielu wierszy lub kolumn. Można to zrobić, przytrzymując klawisz podczas zaznaczania nagłówków lub przytrzymując lewy przycisk myszy i przeciągając.

W programie FreeCAD w wersji 0.19 i wcześniejszych wiersze są wstawiane nad zaznaczonymi wierszami, a kolumny po lewej stronie zaznaczonych kolumn. W programie FreeCAD w wersji 0.20 można określić kierunek wstawiania.

Należy pamiętać, że usunięcie wierszy lub kolumn z danymi może spowodować zepsucie arkusza kalkulacyjnego i Twojego modelu, jeśli opiera się on na arkuszu. W takim przypadku użytkownik nie jest ostrzegany.

Wycinanie i kopiowanie-wklejanie komórek
W komórkach arkuszy kalkulacyjnych programu FreeCAD można wykonywać operacje wycinania i kopiowania-wklejania. Do tych operacji można używać standardowych skrótów klawiszowych: +,  +  i  +. Aby zaznaczyć wiele komórek, przytrzymaj klawisz podczas zaznaczania lub przytrzymaj lewy przycisk myszy i przeciągnij, aby zaznaczyć prostokątny zakres komórek.

Operacje wycinania i kopiowania zapisują zawartość i właściwości komórek w Schowku. Operacja wklejania powoduje zapisanie danych w taki sposób, że zawartość lewej górnej komórki zapisanych danych jest umieszczana w aktywnej komórce. Pozostała przechowywana zawartość jest umieszczana względem tej komórki. Formuły są odpowiednio aktualizowane.

Należy pamiętać, że usunięcie komurek z danymi może spowodować zepsucie arkusza kalkulacyjnego i Twojego modelu, jeśli opiera się on na arkuszu. W takim przypadku użytkownik nie jest ostrzegany.

W programie FreeCAD w wersji 0.19 i wcześniejszych występuje błąd, który może powodować zawieszanie się programu FreeCAD, jeśli wklejany jest zakres komórek inny niż prostokątny. Zaleca się zapisanie pracy przed wykonaniem jakichkolwiek operacji wklejania.

Właściwości komórek
Właściwości komórki arkusza kalkulacyjnego można edytować, klikając komórkę prawym przyciskiem myszy i wybierając z menu podręcznego polecenie. Zostanie wyświetlone następujące okno dialogowe:



Zgodnie z informacjami na kartach można zmieniać następujące właściwości:


 * Kolor: kolor tekstu i kolor tła
 * Wyrównanie: wyrównanie tekstu w poziomie i w pionie
 * Styl: styl tekstu: pogrubienie, kursywa, podkreślenie
 * Jednostki:  Wyświetl jednostki dla tej komórki. Proszę przeczytać sekcję Jednostki poniżej.
 * Alias:  Definiuje alias dla tej komórki. Można go używać w formułach komórek, a także w ogólnych wyrażeniach. Więcej informacji na ten temat znajduje się w sekcji Dane arkusza kalkulacyjnego w wyrażeniach.

Wyrażenia w komórkach
Komórka arkusza kalkulacyjnego może zawierać dowolny tekst lub wyrażenie. Technicznie rzecz biorąc, wyrażenia muszą zaczynać się od znaku równości "=". Jednak arkusz kalkulacyjny stara się być inteligentny. Jeśli wpiszesz coś, co wygląda jak wyrażenie bez znaku "=", zostanie on dodany automatycznie.

Wyrażenia komórek mogą zawierać liczby, funkcje, odwołania do innych komórek i odwołania do właściwości modelu (ale przeczytaj akapit Obecne ograniczenia poniżej). Do komórek odwołujemy się za pomocą ich adresu utworzonego z indeksu kolumny (wielka litera) i wiersza (liczba). Do komórki można się też odwoływać za pomocą jej nazwy alias. Przykład: B4 + A6

Uwaga: Wyrażenia komórek są traktowane przez FreeCAD jak kod programowania. Dlatego podczas edycji zawartości komórki można zauważyć, że nie jest ona zgodna z ustawieniami wyświetlania:
 * separatorem miejsc dziesiętnych jest zawsze kropka
 * liczba wyświetlanych miejsc po przecinku może się różnić od Twoich ustawień w preferencjach.

Odwołania do obiektów w modelu wyjaśniono w sekcji Odniesienia do danych CAD poniżej. Używanie wartości komórek arkusza kalkulacyjnego do definiowania właściwości modelu wyjaśniono w sekcji Dane arkusza kalkulacyjnego w wyrażeniach poniżej. Więcej informacji na temat wyrażeń i dostępnych funkcji można znaleźć na stronie Wyrażenia.

Interakcja między arkuszami kalkulacyjnymi a modelem CAD
Dane znajdujące się w komórkach arkusza kalkulacyjnego mogą być wykorzystywane w wyrażeniach parametrów modelu CAD. W ten sposób arkusz kalkulacyjny może być używany jako źródło wartości parametrów używanych w całym modelu, efektywnie gromadząc wartości w jednym miejscu. Gdy wartości są zmieniane w arkuszu kalkulacyjnym, zostają one przekazane do całego modelu.

Podobnie, właściwości obiektów modelu CAD mogą być używane w wyrażeniach w komórkach arkusza kalkulacyjnego. Pozwala to na wykorzystanie w arkuszu kalkulacyjnym właściwości obiektu, takich jak objętość czy powierzchnia. Jeśli nazwa obiektu w modelu CAD zostanie zmieniona, zmiana ta zostanie automatycznie przeniesiona do wszystkich odwołań w wyrażeniach arkusza kalkulacyjnego używających zmienionej nazwy.

W dokumencie może być używany więcej niż jeden arkusz kalkulacyjny. Arkusz kalkulacyjny można zidentyfikować, używając jego nazwy lub etykiety.

FreeCAD automatycznie przypisuje unikalną nazwę do arkusza kalkulacyjnego podczas jego tworzenia. Nazwy te są zgodne z wzorcem, , i tak dalej. Nazwy tej nie można zmienić ręcznie i nie jest ona widoczna we właściwościach arkusza kalkulacyjnego. Można jej użyć do odwołania się do arkusza kalkulacyjnego w wyrażeniach (zobacz sekcję Dane arkusza kalkulacyjnego w wyrażeniach poniżej).

Etykieta arkusza kalkulacyjnego jest automatycznie ustawiana na nazwę arkusza podczas jego tworzenia. W przeciwieństwie do nazwy, etykietę można zmienić, np. w panelu właściwości lub za pomocą polecenia w menu podręcznym. Należy pamiętać, że etykieta arkusza kalkulacyjnego w dokumencie musi być unikalna. Jeśli spróbujesz zmienić etykietę na etykietę używaną już przez inny arkusz kalkulacyjny, FreeCAD nie zaakceptuje nowej etykiety.

FreeCAD sprawdza, czy nie występują zależności cykliczne. Zobacz sekcję obecne ograniczenia.

Odniesienia do danych CAD
Jak wskazano powyżej, w wyrażeniach arkusza kalkulacyjnego można odwoływać się do danych z modelu CAD.

Wyrażenia obliczeniowe w komórkach arkusza kalkulacyjnego zaczynają się od znaku równości. Jednak mechanizm wprowadzania danych w arkuszu kalkulacyjnym stara się być inteligentny. Wyrażenie może być wpisane bez znaku. Jeśli wpisany ciąg znaków jest poprawnym wyrażeniem, znak jest automatycznie dodawany po ostatnim naciśnięciu klawisza. Jeśli wpisany ciąg nie jest poprawnym wyrażeniem (często jest to wynik wpisania czegoś z niewłaściwą literą, np. "MyCube.length" zamiast "MyCube.Length"), nie jest dodawany znak i jest on traktowany jako zwykły ciąg tekstowy.

Uwaga: Powyższe zachowanie (automatyczne wstawianie ) ma kilka nieprzyjemnych konsekwencji:
 * Jeśli chcesz zachować kolumnę nazw odpowiadającą nazwie alias w sąsiedniej kolumnie wartości, musisz wprowadzić nazwę w kolumnie etykiety "przed" podaniem komórki w wartości kolumna jego alias-name. W przeciwnym razie, gdy wprowadzisz nazwę aliasu w kolumnie etykiety, arkusz kalkulacyjny przyjmie, że jest to wyrażenie i zmieni go na „=”. Wyświetlany tekst będzie wtedy wartością z komórki .
 * Jeśli popełnisz błąd podczas wpisywania nazwy w kolumnie etykiety i chcesz go poprawić, nie możesz po prostu zmienić go na nazwę aliasu. Zamiast tego musisz najpierw zmienić nazwę aliasu na inną, następnie poprawić nazwę tekstową w kolumnie etykiety, a kolejnie zmienić nazwę aliasu w kolumnie wartości z powrotem na oryginalną.

Jednym ze sposobów obejścia tych problemów jest poprzedzenie etykiet tekstowych odpowiadających nazwom aliasów stałym ciągiem znaków, dzięki czemu staną się one różne. Należy pamiętać, że znak nie będzie działał, ponieważ jest konwertowany na znak. Jednak spacja, choć niewidoczna, będzie działać.

W poniższej tabeli przedstawiono kilka przykładów przy założeniu, że model ma cechę o nazwie "MyCube":

Dane arkusza kalkulacyjnego w wyrażeniach
Aby użyć danych arkusza kalkulacyjnego w innych częściach programu FreeCAD, zwykle tworzy się Wyrażenie, które odnosi się do arkusza kalkulacyjnego i komórki zawierającej dane, których chcesz użyć. Arkusze kalkulacyjne można identyfikować na podstawie nazwy lub etykiety, a komórki na podstawie adresu lub aliasu. Autouzupełnianie jest dostępne dla wszystkich form odwołań.

Zalecanym sposobem odwoływania się do danych arkusza kalkulacyjnego jest używanie etykiety arkusza i nazwy aliasu komórki. Bardziej szczegółowe omówienie zalet i wad poszczególnych trybów adresowania znajduje się w rozwiniętej sekcji poniżej.

Użycie etykiety arkusza kalkulacyjnego ma tę zaletę, że można ją dowolnie zmieniać, aby opisywała zawartość arkusza. Łatwiej jest również zidentyfikować używany arkusz kalkulacyjny, ponieważ tekst w wyrażeniu odpowiada etykiecie widocznej w widoku modelu i właściwości. Jeśli zdecydujesz się zmienić etykietę arkusza kalkulacyjnego, istniejące odwołania do zawartości arkusza zostaną zaktualizowane, więc nie zepsujesz swoich wyrażeń, zmieniając nazwę arkusza. Wewnętrzna nazwa arkusza kalkulacyjnego nie jest dostępna nigdzie poza edytorem wyrażeń, więc jeśli użyjesz wewnętrznej nazwy, a później zmienisz nazwę arkusza kalkulacyjnego, możesz mieć problem z odnalezieniem źródła danych wyrażenia.

Pamiętaj, że podczas tworzenia nowego arkusza kalkulacyjnego nazwa i etykieta są takie same, więc łatwo jest przypadkowo użyć nazwy arkusza zamiast etykiety. Prostym sposobem na uniknięcie takiej sytuacji jest nadanie arkuszowi sensownej nazwy przed rozpoczęciem używania go w wyrażeniach.

Chociaż w wyrażeniu można użyć numeru wiersza i kolumny w celu odwołania się do komórki, najlepszą praktyką jest nadanie komórce nazwy aliasu i użycie jej. Zobacz Właściwości komórki powyżej, jak ustawić alias. Na przykład, jeśli dane w komórce B1 zawierają parametr długości obiektu, nazwa aliasu pozwoli na odwołanie się do tej wartości jako  zamiast. Oprócz tego, że nazwy aliasów są o wiele łatwiejsze do odczytania i zrozumienia, można je również o wiele łatwiej zmienić, jeśli zdecydujemy się na zmianę struktury arkusza kalkulacyjnego. Używanie aliasów ma również tę zaletę, że łatwiej jest sprawdzić, które komórki są używane do sterowania innymi częściami dokumentu. Zauważ, że FreeCAD automatycznie dostosowuje odniesienia do pozycji w wyrażeniach, jeśli wstawiasz lub usuwasz wiersze i kolumny w arkuszu kalkulacyjnym, więc nawet jeśli używasz numerów wierszy i kolumn w wyrażeniu, możesz wstawiać wiersze i kolumny bez naruszania odniesień do otaczających komórek.

Modele złożone i przeliczanie
Edycja arkusza kalkulacyjnego powoduje ponowne obliczenie modelu 3D, nawet jeśli wprowadzone zmiany nie mają wpływu na model. W przypadku złożonego modelu ponowne obliczanie może trwać bardzo długo, a konieczność czekania po każdej edycji jest oczywiście dość irytująca.

Oto trzy rozwiązania, jak sobie z tym poradzić:
 * 1) Tymczasowo pomiń ponowne przeliczenie:
 * 2) * W oknie widoku drzewa kliknij prawym przyciskiem myszy dokument [[Image:Document.svg|24px]] zawierający arkusz kalkulacyjny.
 * 3) * Z menu podręcznego wybierz opcję.
 * 4) * Rozwiązanie to ma dużą wadę. Nowe wartości wprowadzone w arkuszu kalkulacyjnym nie zostaną wyświetlone do czasu ponownego przeliczenia dokumentu. Zamiast tego wyświetlany jest komunikat.
 * 5) * Możesz dokonać przeliczenia ręcznie, używając polecenia Odświerz, lub wyłączyć opcję po zakończeniu edycji.
 * 6) Użyj makra, aby automatycznie pomijać ponowne obliczenia podczas edycji arkusza kalkulacyjnego:
 * 7) * Pobierz i uruchom makrodefinicję skipSheet.FCMacro.
 * 8) * To rozwiązanie pozwala zaoszczędzić kilka kroków w porównaniu z pierwszym rozwiązaniem, ale ma też wspomnianą wadę.
 * 9) Umieść arkusz kalkulacyjny w osobnym pliku FreeCAD:
 * 10) * Możesz odwoływać się do danych arkusza kalkulacyjnego z zewnętrznego pliku za pomocą takiej składni:.
 * 11) * Zaletą umieszczenia arkusza kalkulacyjnego w innym pliku w stosunku do wyłączenia ponownych obliczeń jest to, że ponownie przeliczany będzie sam arkusz.
 * 12) * Wadą jest to, że model nie będzie automatycznie przeliczany po wprowadzeniu zmian w arkuszu kalkulacyjnym.
 * 13) * W sytuacji, gdy najpierw otwieramy plik arkusza kalkulacyjnego, zmieniamy jedną lub więcej wartości, a następnie otwieramy plik modelu, nie ma żadnych informacji o konieczności ponownego przeliczenia modelu. Jeśli jednak otwarte są oba pliki, po użyciu przycisku Odświerz zostanie poprawnie zaktualizowany model po zmianach w pliku arkusza kalkulacyjnego.

Jednostki
W arkuszu kalkulacyjnym z wartościami komórek jest związane pojęcie wymiaru (jednostki). Liczba wprowadzona bez przypisanej jej jednostki nie ma określonego wymiaru. Jednostka powinna być wprowadzona bezpośrednio po wartości liczby, bez odstępów. Jeśli liczba ma przypisaną jednostkę, będzie ona używana we wszystkich obliczeniach. Na przykład pomnożenie dwóch długości z jednostką mm daje pole powierzchni z jednostką mm&sup2;.

Jeśli komórka zawiera wartość reprezentującą wymiar, należy ją wpisać wraz z odpowiadającą jej jednostką. Chociaż w wielu prostych przypadkach można się obejść bez podawania wartości bezwymiarowej, nie należy podawać jednostki. Jeśli wartość reprezentująca wymiar zostanie wprowadzona bez powiązanej z nią jednostki, pewne sekwencje operacji powodują, że FreeCAD zgłasza niezgodność jednostek w wyrażeniu, podczas gdy wydaje się, że wyrażenie powinno być poprawne. (Można to lepiej zrozumieć, przeglądając ten wątek na forum FreeCAD).

Jednostki wyświetlane dla wartości komórki można zmienić za pomocą okna dialogowego właściwości zakłądka jednostki (powyżej). Nie zmienia to wartości zawartej w komórce, a jedynie konwertuje istniejącą wartość na potrzeby wyświetlania. Wartość używana do obliczeń nie ulega zmianie, a wyniki formuł wykorzystujących tę wartość pozostają niezmienione. Na przykład komórka zawierająca wartość może zostać wyświetlona jako  po zmianie wartości na karcie Jednostki na "cale".

Liczby bezwymiarowej nie można zmienić na liczbę z jednostką za pomocą okna dialogowego właściwości komórki. Można wprowadzić ciąg jednostek i zostanie on wyświetlony, ale komórka nadal będzie zawierać liczbę bezwymiarową. Aby zmienić wartość bezwymiarową na wartość z wymiarem, należy ponownie wprowadzić samą wartość wraz z przypisaną jej jednostką.

Niekiedy może być wskazane usunięcie wymiaru z wyrażenia. Można to zrobić, mnożąc przez 1 z jednostką odwrotną.

Format CSV
Arkusze kalkulacyjne FreeCAD mogą być importowane i eksportowane do formatu CSV, który może być również odczytywany i zapisywany przez większość innych aplikacji arkuszy kalkulacyjnych, takich jak Microsoft Excel czy LibreOffice Calc. Więcej informacji na ten temat można znaleźć na stronach Import i Eksport.

Format XLSX
Arkusze kalkulacyjne w formacie Excel XLSX można importować za pomocą polecenia Importuj lub polecenia Otwórz. Obsługiwane są następujące funkcje:


 * Wszystkie funkcje, które są dostępne także w arkuszu kalkulacyjnym FreeCAD. Inne funkcje powodują wystąpienie błędu w odpowiedniej komórce po zaimportowaniu.
 * Nazwy aliasów dla komórek.
 * Więcej niż jeden arkusz w arkuszu kalkulacyjnym Excel. W takim przypadku dla każdego arkusza Excela tworzony jest jeden arkusz kalkulacyjny FreeCAD.

Inne funkcje nie są importowane do arkusza kalkulacyjnego FreeCAD.

Wydruki
Aby zachować ustawienia strony niezbędne do drukowania, arkusze kalkulacyjne FreeCAD można drukować, wstawiając je do obiektu widok Arkusza Kalkulacyjnego.

Obecne ograniczenia
FreeCAD sprawdza zależności cykliczne podczas ponownych obliczeń. Z założenia sprawdzanie to zatrzymuje się na poziomie obiektu arkusza kalkulacyjnego. W konsekwencji nie powinieneś mieć arkusza kalkulacyjnego zawierającego zarówno komórki, których wartości są używane do określania parametrów modelu, jak i komórki, których wartości wykorzystują dane wyjściowe z modelu. Na przykład nie można mieć komórek określających długość, szerokość i wysokość obiektu, a także innej komórki, która odwołuje się do całkowitej objętości wynikowego kształtu. Ograniczenie to można obejść, mając dwa arkusze kalkulacyjne: jeden używany jako źródło danych dla parametrów wejściowych do modelu, a drugi używany do obliczeń opartych na danych wynikowych geometrii.

Cell binding
It is possible to bind the content of cells to other spreadsheet cells. This can be useful when dealing with large tables or to get cell content from another spreadsheet.

Create binding
To bind, for example, the cell range A3-C4 to the cell range B1-D2:

  Select the cell range A3-C4.   Right-click and select from the context menu.   The dialog opens.   Set the range B1-D2 for the :   Press.   Bound cells have a blue border to highlight the binding. </li>  If you now enter something in cell C1, the same will immediately appear in cell B3. </li> </ol>



Change binding

 * 1) Right-click a bound cell (there is no need to highlight the whole bound range) and select  from the context menu.
 * 2) The  dialog opens.
 * 3) Change one or more options. Note that the, the bound cell range, cannot be changed.
 * 4) Press.

Remove binding

 * 1) Right-click a bound cell (there is no need to highlight the whole bound range) and select  from the context menu.
 * 2) The  dialog opens.
 * 3) Press.

Configuration tables
You can use Spreadsheets to create configuration tables with sets of predefined parameters for your model, and then dynamically change which configuration to use. See this Forum post if you want to know more about the inner workings of this feature.

Expand this section for a brief tutorial on creating a configuration table.

<ol>  In a new document, first create a Std Part, then create a Part Box, a Part Cylinder and a Spreadsheet. </li>  The Box and the Cylinder are automatically placed in the Std Part container. Manually put the Spreadsheet in the container as well. </li>  In the Spreadsheet enter the content as shown below. Set the alias for B2 as, C2 as and D2 as : </li>  Bind the expressions and  to the Box's properties  and, respectively: </li>  Bind the expression to the Cylinder's property. Also change the of the Cylinder to  so that it is lower than the Box. </li>  Right-click the cell A2 in the Spreadsheet and select from the context menu. </li>  The dialog opens. </li>  Enter the following: </li>  Press. </li>  A new property called is be added to the Std Part container to choose the configuration as shown below: </li> </ol>

You can use either a Std Link or a PartDesign SubShapeBinder to instantiate a Variant Instance of a configurable object with the following steps:


 * 1) Create a Std Link to the Std Part container and set its  property to.
 * 2) Move the Link to a new place by changing its  so that it is easier to distinguish from the original object.
 * 3) Select a different  for the Link to create a variant instance.

Similar steps apply to a PartDesign SubShapeBinder, except that its property for activating a variant instance is called.