Spreadsheet Workbench/de: Difference between revisions

From FreeCAD Documentation
No edit summary
No edit summary
Line 108: Line 108:
Tabellen können im CSV-Format[https://de.wikipedia.org/wiki/CSV_(Dateiformat)] importiert und exportiert werden. Dieses Format enthält keine Formeln, kann aber von den meisten anderen Tabellenkalkulationsprogrammen wie Microsoft Excel oder LibreOffice Calc gelesen und geschrieben werden. Wenn Dateien importiert werden, muss das Trennzeichen (das Zeichen, welches die Spalten trennt) das TAB-Zeichen sein. Dies kann üblicherweise in Tabellenkalkulationsprogrammen eingestellt werden. Der Import einer CSV-Datei ist über das Menü Spreadsheet/Importiere Kalkulationstabelle oder durch Klick auf das Symbol [[Image:SpreadsheetImport.svg|24px]] möglich. Diese Import-Funktion öffnet keine Excel-Dateien oder andere Tabellenkalkulationsformate.
Tabellen können im CSV-Format[https://de.wikipedia.org/wiki/CSV_(Dateiformat)] importiert und exportiert werden. Dieses Format enthält keine Formeln, kann aber von den meisten anderen Tabellenkalkulationsprogrammen wie Microsoft Excel oder LibreOffice Calc gelesen und geschrieben werden. Wenn Dateien importiert werden, muss das Trennzeichen (das Zeichen, welches die Spalten trennt) das TAB-Zeichen sein. Dies kann üblicherweise in Tabellenkalkulationsprogrammen eingestellt werden. Der Import einer CSV-Datei ist über das Menü Spreadsheet/Importiere Kalkulationstabelle oder durch Klick auf das Symbol [[Image:SpreadsheetImport.svg|24px]] möglich. Diese Import-Funktion öffnet keine Excel-Dateien oder andere Tabellenkalkulationsformate.


Tabellen im Excel-format "xlsx" können über das Menü Datei/Importieren... in ein FreeCAD-Document importiert werden. Excel-Tabellen können auch durch FreeCAD mit Klick auf das Symbol [[Image:Document-open.svg|24px]] im Menü Datei/Öffnen... geöffnet werden. In diesem Fall wird ein neues Dokument mit einer Tabelle erzeugt. Es werden die folgenden Eigenschaften unterstützt:
<div class="mw-translate-fuzzy">
Tabellen im Excel-format "xlsx" können in ein FreeCAD-Document importiert werden. Excel-Tabellen können auch durch FreeCAD geöffnet werden. In diesem Fall wird ein neues Dokument mit einer Tabelle erzeugt. Es werden die folgenden Eigenschaften unterstützt:
</div>


* Alle Funktionen, die auch im FreeCAD-Spreadsheet zur Verfügung stehen. Andere Funktionen ergeben einen Fehler in der korrespondierenden Zelle nach dem Import.
* Alle Funktionen, die auch im FreeCAD-Spreadsheet zur Verfügung stehen. Andere Funktionen ergeben einen Fehler in der korrespondierenden Zelle nach dem Import.

Revision as of 14:09, 6 October 2018

eingeführt mit Version 0.15Der Arbeitsbereich Tabellenkalkulation ermöglicht die Erstellung und Bearbeitung von Tabellen, die Durchführen von Berechnungen und die Daten eines 3D-Models einzufügen. Die Daten der Tabelle können im CSV-Format exportiert werden zur Verwendung in Anwendungen wie LibreOffice oder Microsoft Excel.

Unterstützte Funktionen

Die folgenden Funktionen mit einem oder zwei Argumenten stehen zur Verfügung: abs, acos, asin, atan, atan2, cos, cosh, exp, log, log10, mod, pow, sin, sinh, sqrt, tan, tanh

Trigonometrische Funktionen verwenden Grad als Standardeinheit. Durch Hinzufügen von rad kann auch die Einheit Radiant verwendet werden.

Die zusätzlichen Funktionen: ceil, floor, trunc, und round stehen in FreeCAD seit eingeführt mit Version 0.16 zur Verfügung.

Die folgenden statistischen Funktionen sind verfügbar: average, count, max, min, stddev, sum.

Die statistischen Funktionen können mit einem oder mehreren Argumenten getrennt durch ein Komma oder ein Semikolon aufgerufen werden. Als Argumente können auch Bereiche (zwei Zellverweise getrennt durch einen Doppelpunkt) angegeben werden, z. B.: =average(B1:B8)

Die Konstanten pi und e sind vordefiniert.

Die bedingte Anweisung wird wie folgt benutzt: = Bedingung ? Wahr-Ergebnis : Falsch-Ergebnis

Die Bedingung muss ein Ausdruck sein, der entweder 0 (für falsch) oder ungleich 0 für wahr ergibt. Die folgenden Vergleichsoperatoren stehen zur Verfügung: ==, !=, >, <, >=, und <=.

Die bedingte Anweisung (conditional statement) hat zur Zeit einen Fehler. Nur der true-Teil darf eine weitere bedingte Anweisung entahlten. Klammern werden entfernt nachdem der Ausdruck gespeichert wurde. Wenn man versucht, eine geschachtelte bedingte Anweisung im false-Teil zu verwenden, führt die intern verwendete Klammerung zu einem falschen Ergebnis, nach dem Speichern und Neuladen.

Formeln werden wie folgt eingegeben: =A2+A3

Noteː Zell-Referenzen müssen mit Großbuchstaben angegeben werden.

Referenzen auf CAD-Daten

Daten der CAD-Konstruktion können in dem Tabellenblatt verwendet werden. Die folgende Tabelle zeigt einige Beispiele. Es wird dabei vorausgesetzt, dass das FreeCAD-Dokument ein Objekt Namens "Würfel" zum Beispiel aus der Arbeitsbereich Part enthält.(Anmerkung, dies ist der interne Name des Objekts, nicht das vom Benutzer zugewiesene Label):

CAD-Data Formel im Tabellenblatt Ergebnis
Parametrische Länge eines Würfels des Arbeitsbereiches Part =Würfel.Length Länge mit den Einheiten mm
Volumen des Würfels =Würfel.Shape.Volume Volumen in mm³ ohne Einheiten
Typ des Würfel-"Shapes" =Würfel.Shape.ShapeType String: Solid
Label des Würfels =Cube.Label String: Würfel
x-Koordinate des Massenschwerpunktes des Würfels =Würfel.Shape.CenterOfMass.x x-Koordinate in mm ohne Einheiten

Eigenschaften der Zellen

Die Eigenschaften der Zellen der Tabelle können mit einem Rechtsklick geändert werden. Es öffnet sich der folgende Dialog:

Er hat mehrere Reiter. Die folgenden Eigenschaften können geändert werden:

  • Textfarbe sowie Hintergrundfarbe
  • horizontale und vertikale Textausrichtung
  • Textstile: fett, kursiv, unterstrichen
  • Die angezeigten Einheiten für diese Zelle. (Unbedingt den Abschnitt unten beachten.)
  • Einen Alias-Namen für diese Zelle festlegen. Der Alias-Name kann in den Zellformeln und auch in den FreeCAD-Ausdrücken verwendet werden eingeführt mit Version 0.16.

Die Ausdrücke werden hier erläutert: Expressions

Daten aus Tabellenblättern in FreeCAD-Ausdrücken

Um die die Tabellendaten in anderen Teilen von FreeCAD benutzen zu können, wird ein vollständig definierter Name benötigt. Weil es möglich ist, mehrere Tabellenblätter in einem FreeCAD-Dokument zu haben, wird der Tabellenname zusammen mit der Zellreferenz oder dem Zell-Alias benötigt. Die folgende Abbildung zeigt die Verwendung eines Aliasses "number" aus einem Tabellenblatt "MySheet" in einem Ausdruck in dem Arbeitsbereich PartDesign.

Durch eine Eintippen von "M" erreicht man die Anzeige von verfügbaren Namen, die mit "M" beginnen. Mit den Pfeiltasten kann "MySheet" ausgewählt werden.

Anschließendes Eintippen von "n" zeigt nun die Liste der verfügbaren Namen in MySheet, die mit "n" anfangen. Der Name "number" kann mit der Pfeilrunter-Taste ausgewählt werden. Wenn eine gültiger Formel angegeben ist, zeigt das Ergebnisfeld die berechnete Länge.

Einheiten

Die Tabellen verwenden Einheiten. Wenn eine Zahl eine Einheit hat, wird diese Einheit auch in den Berechnungen verwendet. Die Multiplikation von zwei Längen mit der Einheit mm ergibt eine Fläche mit der Einheit mm².

Man kann die dargestellte Längeneinheit von Millimeter auf Inch in dem Eigenschaftsdialog ändern. Die Zelle zeigt danach die Länge in Inch. Der eigentliche Wert, der in den Berechnungen verwendet wird, hat sich dadurch nicht geändert. Die Ergebnisse einer Formel, die diesen Wert benutzen, werden durch die angezeigte Einheit nicht geändert. Das Resultat der besagten Formel benutzt immer noch den Wert der Länge in Millimeter.

Eine Zahl ohne Einheit kann durch den Eigenschaftsdialog nicht in eine Zahl mit Einheit umgewandelt werden. Man kann eine Zeichenkette mit einer Einheitsbezeichnung eingeben, die dann auch angezeigt wird. Aber die Zelle enthält immer noch nur eine Zahl ohne Einheit.

Manchmal ist es notwendig, die Einheit von einer Zahl zu entfernen. Dies kann nur durch die Multiplikation einer 1 mit der reziproken Einheit erreicht werden.

Importieren und Exportieren

Tabellen können im CSV-Format[1] importiert und exportiert werden. Dieses Format enthält keine Formeln, kann aber von den meisten anderen Tabellenkalkulationsprogrammen wie Microsoft Excel oder LibreOffice Calc gelesen und geschrieben werden. Wenn Dateien importiert werden, muss das Trennzeichen (das Zeichen, welches die Spalten trennt) das TAB-Zeichen sein. Dies kann üblicherweise in Tabellenkalkulationsprogrammen eingestellt werden. Der Import einer CSV-Datei ist über das Menü Spreadsheet/Importiere Kalkulationstabelle oder durch Klick auf das Symbol möglich. Diese Import-Funktion öffnet keine Excel-Dateien oder andere Tabellenkalkulationsformate.

Tabellen im Excel-format "xlsx" können über das Menü Datei/Importieren... in ein FreeCAD-Document importiert werden. Excel-Tabellen können auch durch FreeCAD mit Klick auf das Symbol im Menü Datei/Öffnen... geöffnet werden. In diesem Fall wird ein neues Dokument mit einer Tabelle erzeugt. Es werden die folgenden Eigenschaften unterstützt:

  • Alle Funktionen, die auch im FreeCAD-Spreadsheet zur Verfügung stehen. Andere Funktionen ergeben einen Fehler in der korrespondierenden Zelle nach dem Import.
  • Aliasnamen für Zellen
  • Mehr als eine Tabelle in der Excel-Datei. In diesem Fall werden mehre Tabellenblätter in dem FreeCAD-Dokument erzeugt.

Andere Inhalte werden nicht in das FreeCAD-Tabellenblatt übernommen. Der Excel-Import ist eingeführt mit Version 0.17 von FreeCAD zur Verfügung.

Bestehende Limitierungen

Innerhalb eines Tabellenblattes ist es nicht möglich die Daten für einen geometrischen Körper zu definieren, zum Beispiel die Länge, und zugleich eine resultierende Größe wie das Volumen dieses Körpers auszuwerten. Dies würde eine zirkulare Referenz erzeugen. Dies ist eine Design-Entscheidung. Es ist jedoch möglich zwei verschieden Tabellenblätter zur benutzen: Eins als Datenquelle für die Geometrie und ein anderes für die Darstellung der resultierenden Größen.

Es ist nicht möglich mehrere Zellen auszuwählen und die Inhalte zu kopieren. Es kann jeweils nur der Inhalt einer Zelle aus dem Eingabefeld kopiert und in das Eingabefeld einer anderen Zelle eingefügt werden.

Für FreeCAD-Versionen 0.14 siehe hier Spreadsheet legacy


Grundlagen der Skripterstellung

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