Spreadsheet Workbench/pl: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
No edit summary
 
(191 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<languages/>
<languages/>

{{Docnav
{{Docnav/pl
|[[Sketcher Workbench|Sketcher Workbench]]
|[[Sketcher_Workbench/pl|Środowisko pracy Szkicownik]]
|[[Start Workbench|Start Workbench]]
|[[Surface_Workbench/pl|Środowisko pracy Powierzchnia 3D]]
|IconL=Workbench_Sketcher.svg
|IconL=Workbench_Sketcher.svg
|IconR=Workbench_Start.svg
|IconR=Workbench_Surface.svg
}}
}}


[[Image:Workbench_Spreadsheet.svg|thumb|128px|Spreadsheet workbench icon]]
[[Image:Workbench_Spreadsheet.svg|thumb|128px|Ikonka FreeCAD dla Środowiska pracy Arkusz Kalkulacyjny]]


== Introduction ==
<span id="Introduction"></span>
==Wprowadzenie==


The [[Image:Workbench_Spreadsheet.svg|24px]] [[Spreadsheet Workbench|Spreadsheet Workbench]] allows you to create and edit spreadsheets, use data from the spreadsheet as parameters in a model, fill the spreadsheet with data retrieved from a model, perform calculations, and export the data to other spreadsheet applications such as LibreOffice or Microsoft Excel.
Środowisko pracy [[Image:Workbench_Spreadsheet.svg|24px]] '''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.


{{TOCright}}
{{TOCright}}


[[File:Spreadsheet_screenshot.jpg|600px]]
[[File:Spreadsheet_screenshot.jpg|600px]]
{{Caption|A spreadsheet with certain cells filled with text and quantities}}
{{Caption|Arkusz kalkulacyjny z komórkami wypełnionymi tekstem i ilościami}}


== Tools ==
<span id="Tools"></span>
==Przybory==


* [[File:Spreadsheet_CreateSheet.svg|24px]] [[Spreadsheet_CreateSheet|Create sheet]]: create a new spreadsheet.
* [[File:Spreadsheet_CreateSheet.svg|24px]] [[Spreadsheet_CreateSheet/pl|Utwórz arkusz]]: tworzy nowy arkusz kalkulacyjny.


* [[File:Spreadsheet_Import.svg|24px]] [[Spreadsheet_Import|Import]]: import a comma-separated values (CSV) file into a spreadsheet.
* [[File:Spreadsheet_Import.svg|24px]] [[Spreadsheet_Import/pl|Importuj arkusz]]: wczytuje plik CSV do arkusza kalkulacyjnego.
* [[File:Spreadsheet_Export.svg|24px]] [[Spreadsheet_Export|Export]]: export a comma-separated values (CSV) file from a spreadsheet.


* [[File:Spreadsheet_MergeCells.svg|24px]] [[Spreadsheet_MergeCells|Merge cells]]: merge selected cells.
* [[File:Spreadsheet_Export.svg|24px]] [[Spreadsheet_Export/pl|Eksportuj arkusz]]: zapisuje pliku CSV na podstawie arkusza kalkulacyjnego.
* [[File:Spreadsheet_SplitCell.svg|24px]] [[Spreadsheet_SplitCell|Split cell]]: split previously merged cells.


* [[File:Spreadsheet_AlignLeft.svg|24px]] [[Spreadsheet_AlignLeft|Align left]]: align the contents of selected cells to the left.
* [[File:Spreadsheet_MergeCells.svg|24px]] [[Spreadsheet_MergeCells/pl|Scal komórki]]: łączy wybrane komórki.
* [[File:Spreadsheet_AlignCenter.svg|24px]] [[Spreadsheet_AlignCenter|Align center]]: align the contents of selected cells to the center horizontally.
* [[File:Spreadsheet_AlignRight.svg|24px]] [[Spreadsheet_AlignRight|Align right]]: align the contents of selected cells to the right.
* [[File:Spreadsheet_AlignTop.svg|24px]] [[Spreadsheet_AlignTop|Align top]]: align the contents of selected cells to the top.
* [[File:Spreadsheet_AlignVCenter.svg|24px]] [[Spreadsheet_AlignVCenter|Align vertical center]]: align the contents of selected cells to the center vertically.
* [[File:Spreadsheet_AlignBottom.svg|24px]] [[Spreadsheet_AlignBottom|Align bottom]]: top align the contents of selected cells to the bottom.


* [[File:Spreadsheet_StyleBold.svg|24px]] [[Spreadsheet_StyleBold|Style bold]]: set the contents of selected cells to bold.
* [[File:Spreadsheet_SplitCell.svg|24px]] [[Spreadsheet_SplitCell/pl|Podziel komórkę]]: rozdziela poprzednio scalone komórki.
* [[File:Spreadsheet_StyleItalic.svg|24px]] [[Spreadsheet_StyleItalic|Style italic]]: set the contents of selected cells to italic.
* [[File:Spreadsheet_StyleUnderline.svg|24px]] [[Spreadsheet_StyleUnderline|Style underline]]: set the contents of selected cells to underlined.


* [[File:Spreadsheet_SetAlias.svg|24px]] [[Spreadsheet_SetAlias|Set alias]]: set alias for selected cells.
* [[File:Spreadsheet_AlignLeft.svg|24px]] [[Spreadsheet_AlignLeft/pl|Wyrównaj do lewej]]: wyrównuje treść wybranych komórek do lewej.


* [[File:Spreadsheet_AlignCenter.svg|24px]] [[Spreadsheet_AlignCenter/pl|Wyśrodkuj w poziomie]]: wyrównuje treść wybranych komórek do środka w poziomie.
* {{Button|Black}} and {{Button|White}} set the foreground and the background colors of the selected cells.


* [[File:Spreadsheet_AlignRight.svg|24px]] [[Spreadsheet_AlignRight/pl|Wyrównaj do prawej]]: wyrównuje treść wybranych komórek do prawej.
== Cell Expressions ==


* [[File:Spreadsheet_AlignTop.svg|24px]] [[Spreadsheet_AlignTop/pl|Wyrównaj do góry]]: wyrównanie zawartości wybranych komórek w górę.
A spreadsheet cell may contain arbitrary text or an expression.
Technically, expressions must start with an equals '=' sign.
However, the spreadsheet attempts to be intelligent;
if you enter what looks like an expression without the leading '=',
one will be added automatically.


* [[File:Spreadsheet_AlignVCenter.svg|24px]] [[Spreadsheet_AlignVCenter/pl|Wyśrodkuj w pionie]]: wyrównuje treść wybranych komórek do środka w pionie.
Cell expressions may contain numbers, functions, references to other cells, and references to properties of the model
(But see [[#Current_Limitations|Current Limitations]] below).
Cells are referenced by their column (CAPITAL letter) and row (number).
A cell may also be referenced by its [[#alias_name|alias-name]] (below).
Example: B4 + A6


* [[File:Spreadsheet_AlignBottom.svg|24px]] [[Spreadsheet_AlignBottom/pl|Wyrównaj w dół]]: wyrównuje treść wybranych komórek do dołu.
References to objects in the model are explained under [[#References_To_CAD-Data|References to CAD-Data]] below.
Using spreadsheet cell values to define model properties are explained under [[#Spreadsheet_Data_in_Expressions|Spreadsheet Data in Expressions]] below.
For more specifics on how expressions are formed, see [[Expressions|Expressions]].


* [[File:Spreadsheet_StyleBold.svg|24px]] [[Spreadsheet_StyleBold/pl|Pogrubienie]]: ustawia pogrubienie treści wybranych komórek.
== Supported Functions ==


* [[File:Spreadsheet_StyleItalic.svg|24px]] [[Spreadsheet_StyleItalic/pl|Kursywa]]: ustawia treść wybranych komórek na kursywę.
Standard trigonometric and other common mathematical functions as well as statistical aggregation functions are supported (see [[Expressions|Expressions]]).


* [[File:Spreadsheet_StyleUnderline.svg|24px]] [[Spreadsheet_StyleUnderline/pl|Podkreślenia]]: ustawia treść wybranych komórek jako podkreśloną.
== Interaction between Spreadsheets and the CAD Model ==


* [[File:Spreadsheet_SetAlias.svg|24px]] [[Spreadsheet_SetAlias/pl|Ustaw alias]]: ustawia alias dla wybranej komórki.
Data in the cells of a spreadsheet may be used in CAD model parameter expressions.
Thus, a spreadsheet may be used as the source for parameter values used throughout a model,
effectively gathering the values in one place.
When values are changed in the spreadsheet, they are propagated throughout the model.


* Przyciski {{Button|Czarny}} oraz {{Button|Biały}} ustawia kolory czcionki i tła dla wybranych komórek.
Similarly, properties from CAD model objects may be used in expressions in spreadsheet cells.
This allows use of object properties like volume or area in the spreadsheet.
If the name of an object in the CAD model is changed,
the change will automatically be propagated to any references in spreadsheet expressions using the name which was changed.


<span id="Preferences"></span>
More than one spreadsheet may be used in a document;
==Ustawienia==
spreadsheets may be given a user-assigned name (rename) like any other object.


* [[Image:Preferences-spreadsheet.svg|32px]] [[Spreadsheet_Preferences/pl|Ustawienia]]: preferencje dla środowiska pracy Arkusz Kalkulacyjny. {{Version/pl|0.20}}
FreeCAD checks for cyclic dependencies. See [[Spreadsheet_Workbench#Current_Limitations|Current Limitations]].


<span id="Removing_cells_can_be_dangerous"></span>
=== Cell Properties ===
==Usuwanie komórek może być niebezpieczne==


Należy pamiętać, że usunięcie lub usunięcie komórek z danymi może spowodować uszkodzenie arkusza kalkulacyjnego i modelu, jeśli opiera się on na arkuszu kalkulacyjnym. W takim przypadku użytkownik nie jest ostrzegany.
The properties of a spreadsheet cell can be edited with a right-click on a cell. The following

dialog pops up:
<span id="Insert_and_remove_rows_and_columns"></span>
==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 {{KEY|Ctrl}} podczas zaznaczania nagłówków lub przytrzymując lewy przycisk myszy i przeciągając.

<span id="Edit_cells"></span>
==Edycja komórek==

Zawartość komórki można edytować, zaznaczając komórkę i wprowadzając wartość w polu wprowadzania {{MenuCommand|Treści}} w górnej części okna. Aby edytować komórkę na miejscu, zaznacz ją i naciśnij {{KEY|F2}} lub kliknij dwukrotnie.

<span id="Delete_cells"></span>
==Usuwanie komórek==

Aby usunąć jedną lub więcej komórek, zaznacz je i naciśnij {{KEY|Del}}. Spowoduje to usunięcie ich zawartości, właściwości i aliasów. Aby usunąć tylko zawartość komórki, należy ją edytować.

<span id="Cut_and_copy-paste_cells"></span>
==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: {{KEY|Ctrl}} + {{KEY|X}}, {{KEY|Ctrl}} + {{KEY|C}} i {{KEY|Ctrl}} + {{KEY|V}}. Aby zaznaczyć wiele komórek, przytrzymaj klawisz {{KEY|Ctrl}} podczas zaznaczania lub przytrzymaj lewy przycisk myszy i przeciągnij, aby zaznaczyć prostokątny zakres komórek.

Operacje wycinania i kopiowania zapisują zawartość, właściwości i aliasy 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. Aliasy są wklejane tylko wtedy, gdy są unikalne.

<span id="Cell_properties"></span>
==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 {{MenuCommand|Właściwości ...}}. Zostanie wyświetlone następujące okno dialogowe:


[[File:SpreadsheetCellPropDialog.png]]
[[File:SpreadsheetCellPropDialog.png]]


Zgodnie z informacjami na kartach można zmieniać następujące właściwości:
As indicated by the tabs, the following properties can be changed:


* Kolor: kolor tekstu i kolor tła
* Color: Text color and background color
* Wyrównanie: wyrównanie tekstu w poziomie i w pionie
* Alignment: Text horizontal and vertical alignment
* Styl: styl tekstu: pogrubienie, kursywa, podkreślenie
* Style: Text style: bold, italic, underline
* Jednostki: Wyświetl jednostki dla tej komórki. Proszę przeczytać sekcję [[#Jednostki|Jednostki]] poniżej.
* Units: <span id="units_tab"></span>Display units for this cell. Please read the [[Spreadsheet_Workbench#Units|Units]] section below.
* Alias: Definiuje [[Spreadsheet_SetAlias/pl|alias]] dla tej komórki. Można go używać w formułach komórek, a także w ogólnych [[Expressions/pl|wyrażeniach]]. Więcej informacji na ten temat znajduje się w sekcji [[#Dane_arkusza_kalkulacyjnego_w_wyra.C5.BCeniach|Dane arkusza kalkulacyjnego w wyrażeniach]].
* Alias: <span id="alias_name"></span>Define an alias-name for this cell. This alias-name can be used in cell formulas and also in general FreeCAD Expressions.
While one may use the row and column number in an expression to reference a cell,
best practice is to give the cell an alias-name and use that.
For example, if the data in cell B1 contained the length parameter for an object,
an alias name of "MyObject_Length" would allow the value to be referred to as "Spreadsheet.MyObject_Length"
instead of "Spreadsheet.B1". {{Version|0.16}}


<span id="Cell_expressions"></span>
=== References To CAD-Data ===
==Wyrażenia w komórkach==


Komórka arkusza kalkulacyjnego może zawierać dowolny tekst, cyfry lub wyrażenie. Wyrażenia muszą zaczynać się od znaku równości "=".
As indicated above, one can reference data from the CAD model in spreadsheet expressions.


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|Obecne ograniczenia]] poniżej)''. Do komórek odwołujemy się za pomocą ich adresu utworzonego z indeksu kolumny ''(wielka litera)'' i wiersza ''(liczba)'', np B4, lub przez jej [[Spreadsheet_SetAlias/pl|alias]].
Computed expressions in spreadsheet cells start with an equals ('=') sign.
However, the spreadsheet entry mechanism attempts to be smart.
An expression may be entered without the leading '=';
if the string entered is a valid expression,
an '=' is automatically added when the final {{KEY|Enter}} is typed.
If the string entered is not a valid expression
(often the result of entering something with the wrong case, e.g. "MyCube.length" instead of "MyCube.Length"),
no leading '=' is added and it is treated as simply a text string.


'''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:
Note: The above behavior (auto insert of '=') has some unpleasant ramifications:
* Separatorem miejsc dziesiętnych jest zawsze kropka. Ale przy wprowadzaniu wartości można również używać przecinków.
* If you want to keep a column of names corresponding to the [[#alias_name|alias-names]] in an adjacent column of values, you must enter the name in the label column ''before'' giving the cell in the value column its alias-name. Otherwise, when you enter the alias-name in the label column the spreadsheet will assume it is an expression and change it to "=<alias-name>"; and the displayed text will be the value from the <alias-name> cell.
* Liczba wyświetlanych miejsc po przecinku może się różnić od Twoich [[Preferences_Editor#Jednostki|ustawień w preferencjach]].
* If you make an error when entering the name in the label column and wish to correct it, you cannot simply change it to the alias-name. Instead, you must first change the alias-name to something else, then fix the text name in the label column, then change the alias-name in the value column back to its original.


Odwołania do obiektów w modelu wyjaśniono w sekcji [[#Odniesienia_do_danych_CAD|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.C5.BCeniach|Dane arkusza kalkulacyjnego w wyrażeniach]] poniżej. Więcej informacji na temat wyrażeń i dostępnych funkcji można znaleźć na stronie [[Expressions/pl|Wyrażenia]].
One way to side-step these issues is to prefix text labels corresponding to alias-names with a fixed string,
thereby making them different. Note that "_" will not work, as it is converted to "=". However, a blank, while invisible, will work.


<span id="Interaction_between_spreadsheets_and_the_CAD_model"></span>
The following table shows some examples assuming the model has a feature named "MyCube":
==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 {{incode|Arkusz kalkulacyjny}}, {{incode|Arkusz kalkulacyjny001}}, {{incode|Arkusz kalkulacyjny002}} 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 [[Expressions/pl|wyrażeniach]] ''(zobacz sekcję [[#Dane_arkusza_kalkulacyjnego_w_wyra.C5.BCeniach|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 {{Button|Zmień nazwę}} w menu podręcznym. Domyślnie FreeCAD nie akceptuje zduplikowanych etykiet, ale istnieje [[Preferences_Editor/pl#Dokument|preferencja]], aby to zmienić. Do arkuszy kalkulacyjnych ze zduplikowanymi etykietami w tym samym dokumencie nie można odwoływać się za pomocą ich etykiety.

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

<span id="References_to_CAD-data"></span>
===Odniesienia do danych CAD===

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

W poniższej tabeli przedstawiono kilka przykładów przy założeniu, że model ma cechę o nazwie "MyCube":
{|{{Prettytable}}
{|{{Prettytable}}
!CAD-Data
!Dane CAD
!Komórka w arkuszu
!Cell in Spreadsheet
!Rezultat
!Result
|-
|-
|Długość parametryczna sześcianu środowiska Część
|Parametric Length of a Part-Workbench Cube
|=MyCube.Length
|{{Incode|<nowiki>=MyCube.Length</nowiki>}}
|Length with units mm
|Długość z jednostkami mm
|-
|-
|Objętość sześcianu
|Volume of the Cube
|=MyCube.Shape.Volume
|{{Incode|<nowiki>=MyCube.Shape.Volume</nowiki>}}
|Volume in mm&sup3; without units
|Objętość w mm&sup3; bez jednostek
|-
|-
|Typ kształtu sześcianu
|Type of the Cube-shape
|=MyCube.Shape.ShapeType
|{{Incode|<nowiki>=MyCube.Shape.ShapeType</nowiki>}}
|String: Solid
|String: Solid
|-
|-
|Etykieta sześcianu
|Label of the Cube
|=MyCube.Label
|{{Incode|<nowiki>=MyCube.Label</nowiki>}}
|String: MyCube
|String: MyCube
|-
|-
|Współrzędna X środka masy sześcianu
|x-coordinate of center of mass of the Cube
|=MyCube.Shape.CenterOfMass.x
|{{Incode|<nowiki>=MyCube.Shape.CenterOfMass.x</nowiki>}}
|Współrzędna w mm bez jednostek
|x-coordinate in mm without units
|}
|}


<span id="Spreadsheet_data_in_expressions"></span>
=== Spreadsheet Data in Expressions ===
===Dane arkusza kalkulacyjnego w wyrażeniach===


Aby użyć danych arkusza kalkulacyjnego w innych częściach programu FreeCAD, zwykle tworzy się [[Expressions/pl|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ń.
The usage of spreadsheet data in other parts of FreeCAD requires a fully defined name. Because it is possible to have
more than one spreadsheet in a document, the spreadsheet name together with the cell name or alias is required.
The following pictures show the usage of an alias "number" from a spreadsheet "MySheet" in an expression
in the PartDesign Workbench.


{|{{Prettytable}}
[[File:Expression usage1.png]]
!
!Arkusz kalkulacyjny według nazwy
!Arkusz kalkulacyjny według etykiety
|-
!Komórka według adresu
|{{incode|<nowiki>=Spreadsheet042.B5</nowiki>}}
|{{incode|<nowiki>=<<MySpreadsheet>>.B5</nowiki>}}
|-
!Komórka według aliasu
|{{incode|<nowiki>=Spreadsheet042.MyAlias</nowiki>}}
|{{incode|<nowiki>=<<MySpreadsheet>>.MyAlias</nowiki>}}
|}


<div class="mw-collapsible mw-collapsed">
Typing an "M" shows a list of available names (above).
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.
The arrow-keys allow one to move down to "MySheet" and select it;
<div class="mw-collapsible-content">
{{KEY|Enter}} will cause it to be completed in the expression.
You can also continue typing or click the entry with the mouse.


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.
[[File:Expression usage2.png]]


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.
Typing an "n" now shows the list of available alias names in MySheet starting with "n" (above).
"number" can now be selected as described above.
Once a valid name with usable content is entered,
the result field will show the calculated value; in this case, the length (below).


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|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 {{incode|MyObject_Length}} pozwoli na odwołanie się do tej wartości jako {{incode|<<MyParams>>.MyObject_Length}} zamiast {{incode|Spreadsheet.B1}}. 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.
[[File:Expression usage3.png]]


</div>
Further typing, such as adding a "+" sign, will result in an expression which is no longer valid
</div>
which will be indicated.
Continuing to complete the expression can again result in a valid expression.


<span id="Complex_models_and_recomputes"></span>
== Units ==
===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.
The Spreadsheet has a notion of dimension (units) associated with cell values.
A number entered without an associated unit has no dimension.
The unit should be entered immediately following the number value, with no intervening space.
If a number has an associated unit, that unit will be used in all calculations.
For example, the multiplication of two lengths with the unit mm gives an area with the unit mm&sup2;.


Oto trzy rozwiązania, jak sobie z tym poradzić:
If a cell contains a value which represents a dimension, it should be entered with its associated unit.
# Tymczasowo pomiń ponowne przeliczenie:
While in many simple cases one can get by with a dimensionless value,
#* W oknie [[Tree_view/pl|widoku drzewa]] kliknij prawym przyciskiem myszy dokument [[Image:Document.svg|24px]] zawierający arkusz kalkulacyjny.
it is unwise to not enter the unit.
#* Z menu podręcznego wybierz opcję {{MenuCommand|Pomiń przeliczanie}}.
If a value representing a dimension is entered without its associated unit, there are some sequences of operations which cause FreeCAD to complain of incompatible units in an expression when it appears the expression should be valid.
#* 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 {{incode|#OCZEKIWANIE}}.
(This may be better understood by viewing [https://forum.freecadweb.org/viewtopic.php?f=3&t=34713&p=292455#p292438 this thread] in the FreeCAD forums.)
#* Możesz dokonać przeliczenia ręcznie, używając polecenia [[Std_Refresh/pl|Odświerz]], lub wyłączyć opcję {{MenuCommand|Pomiń przeliczanie}} po zakończeniu edycji.
# Użyj makra, aby automatycznie pomijać ponowne obliczenia podczas edycji arkusza kalkulacyjnego:
#* Pobierz i uruchom makrodefinicję [https://forum.freecadweb.org/viewtopic.php?f=8&t=48600#p419301 skipSheet.FCMacro].
#* To rozwiązanie pozwala zaoszczędzić kilka kroków w porównaniu z pierwszym rozwiązaniem, ale ma też wspomnianą wadę.
# Umieść arkusz kalkulacyjny w osobnym pliku [[File_Format_FCStd/pl|FreeCAD]]:
#* Możesz odwoływać się do danych arkusza kalkulacyjnego z zewnętrznego pliku {{FileName|.FCStd}} za pomocą takiej składni: {{incode|<nowiki>=NameOfFile#<<MySpreadsheet>>.MyAlias</nowiki>}}.
#* Zaletą umieszczenia arkusza kalkulacyjnego w innym pliku w stosunku do wyłączenia ponownych obliczeń jest to, że ponownie przeliczany będzie sam arkusz.
#* Wadą jest to, że model nie będzie automatycznie przeliczany po wprowadzeniu zmian w arkuszu kalkulacyjnym.
#* 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 [[Std_Refresh/pl|Odświerz]] zostanie poprawnie zaktualizowany model po zmianach w pliku arkusza kalkulacyjnego.


<span id="Units"></span>
You can change the units displayed for a cell value using the properties dialog [[#units_tab|units tab]] (above).
==Jednostki==
This does not change the value contained in the cell; it only converts the existing value for display.
The value used for calculations does not change,
and the results of formulas using the value do not change.
For example, a cell containing the value "5.08cm" can be displayed as "2in" by changing the units tab value to "in".


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;.
A dimensionless number cannot be changed to a number with a unit by the cell properties dialog.
One can put in a unit string, and that string will be displayed; but the cell still contains a dimensionless number. In order to change a dimensionless value to a value with a dimension, the value itself must be re-entered with its associated unit.


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 [https://forum.freecadweb.org/viewtopic.php?f=3&t=34713&p=292455#p292438 ten wątek] na forum FreeCAD)''.
Occasionally it may be desirable to get rid of a dimension in an expression. This can be done by multiplying by 1 with a reciprocal unit.


Jednostki wyświetlane dla wartości komórki można zmienić za pomocą okna dialogowego właściwości [[#W.C5.82a.C5.9Bciwo.C5.9Bci_kom.C3.B3rek|zakładka 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ść {{value|5.08cm}} może zostać wyświetlona jako {{value|2cale}} po zmianie wartości na karcie Jednostki na "cale".
== Importing and exporting ==


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ą.
Sheets can be imported and exported to the [https://en.wikipedia.org/wiki/Comma-separated_values csv] format which can also be read and written by most other spreadsheet applications such as Microsoft Excel or LibreOffice Calc. When importing files into FreeCAD, the delimiter (the character that is used to separate columns) must be the TAB character (this can be set when exporting from other applications). The import of a CSV-file is available from the menu {{MenuCommand|Spreadsheet → Import Spreadsheet}} or by clicking on the icon [[Image:SpreadsheetImport.svg|24px]]. This import function does not open Excel files or any other spreadsheet format.


Niekiedy może być wskazane usunięcie wymiaru z wyrażenia. Można to zrobić, mnożąc przez 1 z jednostką odwrotną.
Spreadsheets in Excel-format "xlsx" can be imported via the menu {{MenuCommand|File → Import...}}. Excel-spreadsheets can also be opened by clicking in the menu {{MenuCommand|File → Open...}} or by clicking on the icon [[Image:Document-open.svg|24px]]. In these cases
a new document with a spreadsheet inside is created. The following features are supported:


<span id="Importing_and_exporting"></span>
* all functions that are also available in the FreeCAD spreadsheet. Other functions give an error in the corresponding cell after the import.
==Importowanie i eksportowanie==
* Alias names for cells
* More than one "Sheet" in the Excel-spreadsheet. In this case one FreeCAD spreadsheet is created for each Excel sheet.


<span id="CSV_format"></span>
Other functionality is not imported into the FreeCAD spreadsheet. The Excel-import is {{Version|0.17}} of FreeCAD.
===Format CSV===


Arkusze kalkulacyjne FreeCAD mogą być importowane i eksportowane do formatu [https://en.wikipedia.org/wiki/Comma-separated_values 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 [[Spreadsheet_Import/pl|Import]] i [[Spreadsheet_Export/pl|Eksport]].
== Current Limitations ==


<span id="XLSX_format"></span>
FreeCAD checks for cyclic dependencies.
===Format XLSX===
By design, that check stops at the level of the spreadsheet object.
As a consequence, you should not have a spreadsheet which contains both
cells whose values are used to specify parameters to the model,
and cells whose values use output from the model.
For example, you cannot have cells specifying the length, width, and height of an object,
and another cell which references the total volume of the resulting shape.
This restriction can be surmounted by having two spreadsheets:
one used as a data-source for input parameters to the model
and the other used for calculations based on resultant geometry-data.


Arkusze kalkulacyjne w formacie Excel XLSX można importować za pomocą polecenia [[Std_Import/pl|Importuj]] lub polecenia [[Std_Open/pl|Otwórz]]. Obsługiwane są następujące funkcje:
When cells are copied, only the content (expression/value) is copied.
The [[Spreadsheet_Workbench#Cell_Properties|Cell Properties]] described above are not copied.


* 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.
For earlier versions see [[Spreadsheet_legacy|Spreadsheet legacy]].
* 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.
== Scripting Basics==

<span id="Printing"></span>
==Wydruki==

Aby zachować ustawienia strony niezbędne do drukowania, arkusze kalkulacyjne FreeCAD można drukować, wstawiając je do obiektu [[TechDraw_SpreadsheetView/pl|widok Arkusza Kalkulacyjnego]].

<span id="Current_limitations"></span>
==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.

<span id="Cell_binding"></span>
==Powiązanie komórek==

{{Version/pl|0.20}}

Istnieje możliwość łączenia zawartości komórek z innymi komórkami arkusza kalkulacyjnego. Może to być przydatne podczas pracy z dużymi tabelami lub w celu pobrania zawartości komórki z innego arkusza kalkulacyjnego.

<span id="Create_binding"></span>
===Tworzenie powiązań===

Aby na przykład powiązać zakres komórek A3-C4 z zakresem komórek B1-D2:

<ol>
<li>
Zaznacz zakres komórek A3-C4.
</li>
<li>
Kliknij prawym przyciskiem myszy i wybierz {{MenuCommand|Powiąż ...}} z menu podręcznego.
</li>
<li>
Zostanie otwarte okno dialogowe {{MenuCommand|Powiąż komórki arkusza kalkulacyjnego}}.
</li>
<li>
Ustaw zakres B1-D2 w polu {{MenuCommand|Do komórek}}:
<br>
[[File:Spreadsheet_binding-dialog.png]]
</li>
<li>
Naciśnij przycisk {{Button|OK}}.
</li>
<li>
Związane komórki mają niebieską obwódkę, aby wyróżnić to powiązanie.
</li>
<li>
Jeśli teraz wpiszesz coś w komórce C1, to to samo pojawi się natychmiast w komórce B3.
</li>
</ol>

[[File:Spreadsheet_binding-result.png]]
{{Caption|Arkusz kalkulacyjny może teraz wyglądać następująco}}

<span id="Change_binding"></span>
===Modyfikacja powiązań===

# Kliknij prawym przyciskiem myszy powiązaną komórkę (nie trzeba zaznaczać całego powiązanego zakresu) i wybierz z menu kontekstowego polecenie {{MenuCommand|Powiąż ...}}.
# Otworzy się okno dialogowe {{MenuCommand|Powiąż komórki arkusza kalkulacyjnego}}.
# Zmień jedną lub więcej opcji. Zwróć uwagę, że nie można zmienić zakresu komórek {{MenuCommand|Powiąż komórki}}, czyli powiązanego zakresu komórek.
# Naciśnij przycisk {{Button|OK}}.

<span id="Remove_binding"></span>
===Usuwanie powiązań===

# Kliknij prawym przyciskiem myszy wiązaną komórkę (nie trzeba zaznaczać całego wiązanego zakresu) i wybierz z menu kontekstowego polecenie {{MenuCommand|Powiąż ...}}.
# Otworzy się okno dialogowe {{MenuCommand|Powiąż komórki arkusza kalkulacyjnego}}.
# Naciśnij przycisk {{Button|Usuń powiązanie}}.

<span id="Notes"></span>
===Uwagi===

* Opcji {{MenuCommand|Ukryj zależność powiązania}} można użyć, aby uniknąć problemów z cyklicznymi zależnościami między arkuszami kalkulacyjnymi. Zaznaczenie jej jest konieczne, gdy na przykład komórki w ''Arkuszu kalkulacyjnym A'' są powiązane z komórkami w ''Arkuszu kalkulacyjnym B'', a komórki w ''Arkuszu kalkulacyjnym B'' są powiązane z innymi komórkami w ''Arkuszu kalkulacyjnym A''. Opcji tej należy używać z rozwagą:
** Ukrywanie zależności może być niebezpieczne, ponieważ uszkodzone zależności mogą spowodować uszkodzenie pliku FreeCAD. Na przykład, gdy usuniesz arkusz kalkulacyjny, nie zostaniesz ostrzeżony o ukrytych zależnościach.
** Gdy otworzysz dokument z arkuszem kalkulacyjnym zawierającym ukrytą zależność, arkusz zostanie oznaczony do ponownego przeliczenia. Dzieje się tak dlatego, że zależności cyklicznej nie można obliczyć ponownie w sposób automatyczny. Aby ponownie obliczyć, należy użyć narzędzia [[Std_Refresh/pl|Odśwież]].
* Wiązanie komórek ma funkcję sprawdzania zakresu i ostrzega o niedopasowanych zakresach. Na przykład powiązanie komórek 1x3 z komórkami 3x2 nie działa, ponieważ nie wiadomo, które 3 komórki z pierwotnych 6 komórek powinny zostać użyte.
* Nie można zmienić zakresu komórek w istniejącym powiązaniu. Należy najpierw usunąć powiązanie z komórek, a następnie utworzyć nowe.
* Nie można jeszcze zmienić koloru ramki wskazującej powiązanie.

<span id="Configuration_tables"></span>
==Tabela konfiguracji==

{{Version/pl|0.20}}

Za pomocą Arkuszy kalkulacyjnych można tworzyć tabele konfiguracyjne zawierające zestawy wstępnie zdefiniowanych parametrów modelu, a następnie dynamicznie zmieniać konfigurację, która ma być używana. Aby dowiedzieć się więcej na temat działania tej funkcji, zobacz [https://forum.freecadweb.org/viewtopic.php?f=17&t=42183 ten post na forum].

<div class="mw-collapsible mw-collapsed toccolours">

Rozwiń tę sekcję, aby zapoznać się z krótkim przewodnikiem po tworzeniu tabeli konfiguracyjnej.

<div class="mw-collapsible-content">

<ol>
<li>
W nowym dokumencie najpierw utwórz [[Std_Part|Część]] środowiska pracy Część, następnie utwórz [[Part_Box/pl|sześcian]], [[Part_Cylinder/pl|walec]] i arkusz kalkulacyjny.
</li>
<li>
Sześcian i walec są automatycznie umieszczane w kontenerze [[Std_Part/pl|Część]]. Umieść w nim także arkusz kalkulacyjny.
</li>
<li>
W arkuszu kalkulacyjnym wprowadź zawartość w sposób przedstawiony poniżej. Ustaw aliasy dla komórek B2 jako {{Value|szerokość}}, C2 jako {{Value|długość}} i D2 jako {{Value|promień}}:
<br>
[[File:Spreadsheet_configuration_table_screenshot_4.png]]
</li>
<li>
Powiąż [[Expressions|wyrażeniem]] komórki {{Value|Spreadsheet.szerokość}} i {{Value|Spreadsheet.długość}} do właściwości sześcianu {{PropertyData|Szerokość}} i {{PropertyData|Długość}}, odpowiednio:
<br>
[[File:Spreadsheet_configuration_table_screenshot_2.png]]
</li>
<li>
Powiąż wyrażenie {{Value|Spreadsheet.promień}} z właściwością {{PropertyData|Promień}} walca. Zmień także wartość {{PropertyData|Wysokość}} walca na {{Value|5 mm}}, tak aby był on niższy niż sześcian.
</li>
<li>
Kliknij prawym przyciskiem myszy komórkę A2 w arkuszu kalkulacyjnym i wybierz z menu kontekstowego polecenie {{MenuCommand|Tabela konfiguracji ...}}.
</li>
<li>
Zostanie otwarte okno dialogowe {{MenuCommand|Ustawienia tabeli konfiguracji}}.
</li>
<li>
Wprowadź następujące dane:
<br>
[[File:Spreadsheet_configuration_table_screenshot_5.png]]
</li>
<li>
Naciśnij przycisk {{Button|OK}}.
</li>
<li>
Do kontenera [[Std_Part|Część]] jest dodawana nowa właściwość o nazwie {{PropertyData|Konfiguracja}}, która umożliwia wybór konfiguracji, jak pokazano poniżej:
<br>
[[File:Spreadsheet_configuration_table_screenshot_6.png]]
</li>
</ol>

Za pomocą [[Std_LinkMake/pl|Łącza]] lub funkcji [[PartDesign_SubShapeBinder/pl|Łącznik kształtów podrzędnych]] można utworzyć instancję [https://forum.freecadweb.org/viewtopic.php?f=17&t=42183&p=532130#p532130 zmienną] obiektu konfigurowalnego, wykonując następujące czynności:

# Utwórz [[Std_LinkMake/pl|Łącze]] do kontenera [[Std_Part/pl|Część]] i ustaw jego właściwość {{PropertyData|Kopiuj łącze przy zmianie}} na wartość {{Value|Włączone}}.
# Przenieś łącze w nowe miejsce, zmieniając jego {{PropertyData|Umiejscowienie}} tak, aby łatwiej było je odróżnić od oryginalnego obiektu.
# Wybierz inną {{PropertyData|Konfigurację}} dla łącza, aby utworzyć jego wersję wariantową.

Podobne kroki dotyczą funkcji [[PartDesign_SubShapeBinder/pl|Łącznik kształtów podrzędnych]], z tą różnicą, że jego właściwość do aktywowania instancji wariantu nazywa się {{PropertyData|Kopiuj łącze przy zmianie}}.

</div>
</div>

<span id="Scripting_basics"></span>
==Podstawy pisania skryptów==


{{Code|code=
{{Code|code=
import Spreadsheet
import Spreadsheet
sheet = App.ActiveDocument.addObject("Spreadsheet::Sheet")
sheet = App.ActiveDocument.addObject("Spreadsheet::Sheet","MySpreadsheet")
sheet.Label = "Dimensions"
sheet.Label = "Dimensions"

sheet.set('A1','10mm')
sheet.recompute()
sheet.get('A1')

sheet.setAlias('B1','Diameter')
sheet.set('Diameter','20mm')
sheet.recompute()
sheet.get('Diameter')
}}
}}



{{Docnav
{{Docnav/pl
|[[Sketcher Workbench|Sketcher Workbench]]
|[[Sketcher_Workbench/pl|Środowisko pracy Szkicownik]]
|[[Start Workbench|Start Workbench]]
|[[Surface_Workbench/pl|Środowisko pracy Powierzchnia 3D]]
|IconL=Workbench_Sketcher.svg
|IconL=Workbench_Sketcher.svg
|IconR=Workbench_Start.svg
|IconR=Workbench_Surface.svg
}}
}}



Latest revision as of 18:57, 25 April 2024

Ikonka FreeCAD dla Środowiska pracy Arkusz Kalkulacyjny

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.

Arkusz kalkulacyjny z komórkami wypełnionymi tekstem i ilościami

Przybory

  • Pogrubienie: ustawia pogrubienie treści wybranych komórek.
  • Kursywa: ustawia treść wybranych komórek na kursywę.
  • Podkreślenia: ustawia treść wybranych komórek jako podkreśloną.
  • Przyciski Czarny oraz Biały ustawia kolory czcionki i tła dla wybranych komórek.

Ustawienia

Usuwanie komórek może być niebezpieczne

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

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 Ctrl podczas zaznaczania nagłówków lub przytrzymując lewy przycisk myszy i przeciągając.

Edycja komórek

Zawartość komórki można edytować, zaznaczając komórkę i wprowadzając wartość w polu wprowadzania Treści w górnej części okna. Aby edytować komórkę na miejscu, zaznacz ją i naciśnij F2 lub kliknij dwukrotnie.

Usuwanie komórek

Aby usunąć jedną lub więcej komórek, zaznacz je i naciśnij Del. Spowoduje to usunięcie ich zawartości, właściwości i aliasów. Aby usunąć tylko zawartość komórki, należy ją edytować.

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: Ctrl + X, Ctrl + C i Ctrl + V. Aby zaznaczyć wiele komórek, przytrzymaj klawisz Ctrl podczas zaznaczania lub przytrzymaj lewy przycisk myszy i przeciągnij, aby zaznaczyć prostokątny zakres komórek.

Operacje wycinania i kopiowania zapisują zawartość, właściwości i aliasy 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. Aliasy są wklejane tylko wtedy, gdy są unikalne.

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 Właściwości .... 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, cyfry lub wyrażenie. Wyrażenia muszą zaczynać się od znaku równości "=".

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), np B4, lub przez jej alias.

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. Ale przy wprowadzaniu wartości można również używać przecinków.
  • 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 Arkusz kalkulacyjny, Arkusz kalkulacyjny001, Arkusz kalkulacyjny002 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 Zmień nazwę w menu podręcznym. Domyślnie FreeCAD nie akceptuje zduplikowanych etykiet, ale istnieje preferencja, aby to zmienić. Do arkuszy kalkulacyjnych ze zduplikowanymi etykietami w tym samym dokumencie nie można odwoływać się za pomocą ich 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.

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

Dane CAD Komórka w arkuszu Rezultat
Długość parametryczna sześcianu środowiska Część =MyCube.Length Długość z jednostkami mm
Objętość sześcianu =MyCube.Shape.Volume Objętość w mm³ bez jednostek
Typ kształtu sześcianu =MyCube.Shape.ShapeType String: Solid
Etykieta sześcianu =MyCube.Label String: MyCube
Współrzędna X środka masy sześcianu =MyCube.Shape.CenterOfMass.x Współrzędna w mm bez jednostek

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ń.

Arkusz kalkulacyjny według nazwy Arkusz kalkulacyjny według etykiety
Komórka według adresu =Spreadsheet042.B5 =<<MySpreadsheet>>.B5
Komórka według aliasu =Spreadsheet042.MyAlias =<<MySpreadsheet>>.MyAlias

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 MyObject_Length pozwoli na odwołanie się do tej wartości jako <<MyParams>>.MyObject_Length zamiast Spreadsheet.B1. 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:
    • W oknie widoku drzewa kliknij prawym przyciskiem myszy dokument zawierający arkusz kalkulacyjny.
    • Z menu podręcznego wybierz opcję Pomiń przeliczanie.
    • 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 #OCZEKIWANIE.
    • Możesz dokonać przeliczenia ręcznie, używając polecenia Odświerz, lub wyłączyć opcję Pomiń przeliczanie po zakończeniu edycji.
  2. Użyj makra, aby automatycznie pomijać ponowne obliczenia podczas edycji arkusza kalkulacyjnego:
    • Pobierz i uruchom makrodefinicję skipSheet.FCMacro.
    • To rozwiązanie pozwala zaoszczędzić kilka kroków w porównaniu z pierwszym rozwiązaniem, ale ma też wspomnianą wadę.
  3. Umieść arkusz kalkulacyjny w osobnym pliku FreeCAD:
    • Możesz odwoływać się do danych arkusza kalkulacyjnego z zewnętrznego pliku .FCStd za pomocą takiej składni: =NameOfFile#<<MySpreadsheet>>.MyAlias.
    • Zaletą umieszczenia arkusza kalkulacyjnego w innym pliku w stosunku do wyłączenia ponownych obliczeń jest to, że ponownie przeliczany będzie sam arkusz.
    • Wadą jest to, że model nie będzie automatycznie przeliczany po wprowadzeniu zmian w arkuszu kalkulacyjnym.
    • 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².

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ładka 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ść 5.08cm może zostać wyświetlona jako 2cale 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ą.

Importowanie i eksportowanie

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.

Powiązanie komórek

dostępne w wersji 0.20

Istnieje możliwość łączenia zawartości komórek z innymi komórkami arkusza kalkulacyjnego. Może to być przydatne podczas pracy z dużymi tabelami lub w celu pobrania zawartości komórki z innego arkusza kalkulacyjnego.

Tworzenie powiązań

Aby na przykład powiązać zakres komórek A3-C4 z zakresem komórek B1-D2:

  1. Zaznacz zakres komórek A3-C4.
  2. Kliknij prawym przyciskiem myszy i wybierz Powiąż ... z menu podręcznego.
  3. Zostanie otwarte okno dialogowe Powiąż komórki arkusza kalkulacyjnego.
  4. Ustaw zakres B1-D2 w polu Do komórek:
  5. Naciśnij przycisk OK.
  6. Związane komórki mają niebieską obwódkę, aby wyróżnić to powiązanie.
  7. Jeśli teraz wpiszesz coś w komórce C1, to to samo pojawi się natychmiast w komórce B3.

Arkusz kalkulacyjny może teraz wyglądać następująco

Modyfikacja powiązań

  1. Kliknij prawym przyciskiem myszy powiązaną komórkę (nie trzeba zaznaczać całego powiązanego zakresu) i wybierz z menu kontekstowego polecenie Powiąż ....
  2. Otworzy się okno dialogowe Powiąż komórki arkusza kalkulacyjnego.
  3. Zmień jedną lub więcej opcji. Zwróć uwagę, że nie można zmienić zakresu komórek Powiąż komórki, czyli powiązanego zakresu komórek.
  4. Naciśnij przycisk OK.

Usuwanie powiązań

  1. Kliknij prawym przyciskiem myszy wiązaną komórkę (nie trzeba zaznaczać całego wiązanego zakresu) i wybierz z menu kontekstowego polecenie Powiąż ....
  2. Otworzy się okno dialogowe Powiąż komórki arkusza kalkulacyjnego.
  3. Naciśnij przycisk Usuń powiązanie.

Uwagi

  • Opcji Ukryj zależność powiązania można użyć, aby uniknąć problemów z cyklicznymi zależnościami między arkuszami kalkulacyjnymi. Zaznaczenie jej jest konieczne, gdy na przykład komórki w Arkuszu kalkulacyjnym A są powiązane z komórkami w Arkuszu kalkulacyjnym B, a komórki w Arkuszu kalkulacyjnym B są powiązane z innymi komórkami w Arkuszu kalkulacyjnym A. Opcji tej należy używać z rozwagą:
    • Ukrywanie zależności może być niebezpieczne, ponieważ uszkodzone zależności mogą spowodować uszkodzenie pliku FreeCAD. Na przykład, gdy usuniesz arkusz kalkulacyjny, nie zostaniesz ostrzeżony o ukrytych zależnościach.
    • Gdy otworzysz dokument z arkuszem kalkulacyjnym zawierającym ukrytą zależność, arkusz zostanie oznaczony do ponownego przeliczenia. Dzieje się tak dlatego, że zależności cyklicznej nie można obliczyć ponownie w sposób automatyczny. Aby ponownie obliczyć, należy użyć narzędzia Odśwież.
  • Wiązanie komórek ma funkcję sprawdzania zakresu i ostrzega o niedopasowanych zakresach. Na przykład powiązanie komórek 1x3 z komórkami 3x2 nie działa, ponieważ nie wiadomo, które 3 komórki z pierwotnych 6 komórek powinny zostać użyte.
  • Nie można zmienić zakresu komórek w istniejącym powiązaniu. Należy najpierw usunąć powiązanie z komórek, a następnie utworzyć nowe.
  • Nie można jeszcze zmienić koloru ramki wskazującej powiązanie.

Tabela konfiguracji

dostępne w wersji 0.20

Za pomocą Arkuszy kalkulacyjnych można tworzyć tabele konfiguracyjne zawierające zestawy wstępnie zdefiniowanych parametrów modelu, a następnie dynamicznie zmieniać konfigurację, która ma być używana. Aby dowiedzieć się więcej na temat działania tej funkcji, zobacz ten post na forum.

Rozwiń tę sekcję, aby zapoznać się z krótkim przewodnikiem po tworzeniu tabeli konfiguracyjnej.

  1. W nowym dokumencie najpierw utwórz Część środowiska pracy Część, następnie utwórz sześcian, walec i arkusz kalkulacyjny.
  2. Sześcian i walec są automatycznie umieszczane w kontenerze Część. Umieść w nim także arkusz kalkulacyjny.
  3. W arkuszu kalkulacyjnym wprowadź zawartość w sposób przedstawiony poniżej. Ustaw aliasy dla komórek B2 jako szerokość, C2 jako długość i D2 jako promień:
  4. Powiąż wyrażeniem komórki Spreadsheet.szerokość i Spreadsheet.długość do właściwości sześcianu DANESzerokość i DANEDługość, odpowiednio:
  5. Powiąż wyrażenie Spreadsheet.promień z właściwością DANEPromień walca. Zmień także wartość DANEWysokość walca na 5 mm, tak aby był on niższy niż sześcian.
  6. Kliknij prawym przyciskiem myszy komórkę A2 w arkuszu kalkulacyjnym i wybierz z menu kontekstowego polecenie Tabela konfiguracji ....
  7. Zostanie otwarte okno dialogowe Ustawienia tabeli konfiguracji.
  8. Wprowadź następujące dane:
  9. Naciśnij przycisk OK.
  10. Do kontenera Część jest dodawana nowa właściwość o nazwie DANEKonfiguracja, która umożliwia wybór konfiguracji, jak pokazano poniżej:

Za pomocą Łącza lub funkcji Łącznik kształtów podrzędnych można utworzyć instancję zmienną obiektu konfigurowalnego, wykonując następujące czynności:

  1. Utwórz Łącze do kontenera Część i ustaw jego właściwość DANEKopiuj łącze przy zmianie na wartość Włączone.
  2. Przenieś łącze w nowe miejsce, zmieniając jego DANEUmiejscowienie tak, aby łatwiej było je odróżnić od oryginalnego obiektu.
  3. Wybierz inną DANEKonfigurację dla łącza, aby utworzyć jego wersję wariantową.

Podobne kroki dotyczą funkcji Łącznik kształtów podrzędnych, z tą różnicą, że jego właściwość do aktywowania instancji wariantu nazywa się DANEKopiuj łącze przy zmianie.

Podstawy pisania skryptów

import Spreadsheet
sheet = App.ActiveDocument.addObject("Spreadsheet::Sheet","MySpreadsheet")
sheet.Label = "Dimensions"

sheet.set('A1','10mm')
sheet.recompute()
sheet.get('A1')

sheet.setAlias('B1','Diameter')
sheet.set('Diameter','20mm')
sheet.recompute()
sheet.get('Diameter')