Spreadsheet Workbench/it: Difference between revisions

From FreeCAD Documentation
(Created page with "Le espressioni calcolate nelle celle del foglio di calcolo iniziano con un segno di uguale ('='). Comunque, il meccanismo di immissione del foglio di calcolo tenta di essere i...")
(Created page with "Nota: il comportamento precedente (inserimento automatico di '=') ha alcune spiacevoli conseguenze: * se si desidera mantenere una colonna di nomi corrispondenti ai nomi #al...")
Line 80: Line 80:
non viene aggiunto il segno '=' e viene trattato semplicemente come una stringa di testo.
non viene aggiunto il segno '=' e viene trattato semplicemente come una stringa di testo.


Nota: il comportamento precedente (inserimento automatico di '=') ha alcune spiacevoli conseguenze:
Note: The above behavior (auto insert of '=') has some unpleasant ramifications:
* 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.
* se si desidera mantenere una colonna di nomi corrispondenti ai nomi [[#alias_name|alias-names]] in una colonna di valori adiacente, è necessario immettere il nome nella colonna dell'etichetta prima di quello assegnato alla cella nella colonna del valore come nome alias. Altrimenti, quando inserisce il nome alias nella colonna dellle etichette il foglio di calcolo assume che è un'espressione e lo cambia in "= <alias-name>"; e il testo visualizzato è il valore dalla cella <alias-name>.
* Se si commette un errore quando si inserisce il nome nella colonna dell'etichetta e si desidera correggerlo, non si può semplicemente cambiar con il nome alias. Invece, bisogna prima cambiare il nome alias in qualcos'altro, quindi correggere il nome del testo nella colonna dell'etichetta, quindi cambiare il nome alias nella colonna con il suo originale.
* 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.


One way to side-step these issues is to prefix text labels corresponding to alias-names with a fixed string,
One way to side-step these issues is to prefix text labels corresponding to alias-names with a fixed string,

Revision as of 14:11, 13 April 2019

Introduzione

L'ambiente Spreadsheet consente di creare e modificare fogli di calcolo, utilizzare i dati del foglio di calcolo come parametri in un modello, riempire il foglio di calcolo con i dati recuperati da un modello, eseguire calcoli ed esportare i dati in altre applicazioni di fogli di calcolo come LibreOffice o Microsoft Excel.

L'ambiente Spreadsheet è disponibile da FreeCAD 0.15.

Espressioni nelle celle

Una cella del foglio di calcolo può contenere un testo o un'espressione. Tecnicamente, le espressioni devono iniziare con un segno "=" uguale. Tuttavia, il foglio elettronico tenta di essere intelligente; se si inserisce qualcosa che sembra un'espressione senza il segno '=', lo aggiunge automaticamente.

Le espressioni inserite nelle celle possono contenere numeri, funzioni, riferimenti ad altre celle e riferimenti alle proprietà del modello (Ma vedere sotto le Limitazioni attuali). Le celle sono referenziate dalla loro colonna (lettera maiuscola) e riga (numero). Una cella può anche essere referenziata dal suo alias. Esempio: B4 + A6

I riferimenti agli oggetti nel modello sono spiegati in seguito in Riferimento ai dati CAD. L'utilizzo dei valori delle celle del foglio di calcolo per definire le proprietà del modello è spiegato in seguito in Dati del foglio di calcolo nelle espressioni. Per ulteriori informazioni su come sono formate le espressioni, consultare la pagina Espressioni.

Funzioni supportate

Sono supportate le funzioni trigonometriche standard e le altre comuni funzioni matematiche nonché le funzioni di aggregazione statistica (vedere Expressioni).

Interazione tra fogli di calcolo e modello CAD

I dati nelle celle di un foglio di calcolo possono essere utilizzati nelle espressioni dei parametri del modello CAD. Pertanto, un foglio di calcolo può essere utilizzato come origine per i valori dei parametri utilizzati in un modello, raccogliendo efficacemente i valori in un'unica posizione. Quando i valori vengono modificati nel foglio di calcolo, le modifiche si propagano nel modello.

Allo stesso modo, le proprietà degli oggetti del modello CAD possono essere utilizzate nelle espressioni nelle celle del foglio di calcolo. Ciò consente l'uso di proprietà dell'oggetto, come il volume o l'area, nel foglio di calcolo. Se nel modello CAD viene cambiato il nome di un oggetto, la modifica viene automaticamente propagata a qualsiasi riferimento nelle espressioni del foglio di calcolo utilizzando il nome che è stato modificato.

In un documento si possono utilizzare più fogli di calcolo; ai fogli di calcolo può essere assegnato un nome assegnato (rinominato) come qualsiasi altro oggetto.

FreeCAD verifica le dipendenze cicliche. Vedere Limitazioni correnti.

Proprietà delle celle

Le proprietà di una cella del foglio possono essere modificate con un clic destro su una cella. Si apre la seguente finestra:

Come indicato dalle schede, è possibile modificare le seguenti proprietà:

  • Color: Colore del testo e colore di sfondo
  • Alignment: Allineamento orizzontale e verticale del testo
  • Style: Stile del testo: grassetto, corsivo, sottolineato
  • Units: Mostra le unità di misura per questa cella. Si prega di leggere la sezione Unità di misura sottostante.
  • Alias: Definisce un nome alias per questa cella. Questo nome alias può essere utilizzato nelle formule della cella e in generale anche nelle espressioni di FreeCAD.

Anche se è possibile utilizzare il numero di riga e di colonna in un'espressione per fare riferimento a una cella, è consigliabile assegnare alla cella un nome alias e utilizzarlo. Ad esempio, se i dati nella cella B1 contengono il parametro length per un oggetto, un nome alias di "MyObject_Length" consente di chiamare il valore come "Spreadsheet.MyObject_Length" invece di "Spreadsheet.B1". disponibile dalla versione 0.16

Riferimento ai dati CAD

Come indicato sopra, è possibile fare riferimento ai dati del modello CAD nelle espressioni del foglio di calcolo.

Le espressioni calcolate nelle celle del foglio di calcolo iniziano con un segno di uguale ('='). Comunque, il meccanismo di immissione del foglio di calcolo tenta di essere intelligente. Un'espressione può essere inserita senza il segno '='; se la stringa inserita è un'espressione valida, un '=' viene aggiunto automaticamente quando si premere Enter finale. Se la stringa inserita non è un'espressione valida (spesso il risultato di una digitazione sbagliata, ad es. "MyCube.length" anziché "MyCube.Length"), non viene aggiunto il segno '=' e viene trattato semplicemente come una stringa di testo.

Nota: il comportamento precedente (inserimento automatico di '=') ha alcune spiacevoli conseguenze:

  • se si desidera mantenere una colonna di nomi corrispondenti ai nomi alias-names in una colonna di valori adiacente, è necessario immettere il nome nella colonna dell'etichetta prima di quello assegnato alla cella nella colonna del valore come nome alias. Altrimenti, quando inserisce il nome alias nella colonna dellle etichette il foglio di calcolo assume che è un'espressione e lo cambia in "= <alias-name>"; e il testo visualizzato è il valore dalla cella <alias-name>.
  • Se si commette un errore quando si inserisce il nome nella colonna dell'etichetta e si desidera correggerlo, non si può semplicemente cambiar con il nome alias. Invece, bisogna prima cambiare il nome alias in qualcos'altro, quindi correggere il nome del testo nella colonna dell'etichetta, quindi cambiare il nome alias nella colonna con il suo originale.

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.

La tabella seguente mostra alcuni esempi assumendo che il modello abbia una funzione denominata "MyCube":

Dati CAD Chiamata nel foglio di calcolo Risultato
Lunghezza parametrica di un Cubo di Part =Cube.Length Lunghezza in mm
Volume del Cubo =Cube.Shape.Volume Volume in mm³ senza unità
Tipo di forma del Cubo =Cube.Shape.ShapeType String: Solid
Etichetta del Cubo =Cube.Label String: Cube
coordinata x del centro di massa del Cubo =Cube.Shape.CenterOfMass.x coordinata x in mm senza unità di misura

Dati dei fogli di calcolo nelle espressioni

L'utilizzo dei dati di un foglio di calcolo in altre parti di FreeCAD richiede un nome completamente definito. Poiché è possibile avere diversi fogli nello stesso documento, serve il nome del foglio con il nome della cella o dell'alias. Le seguenti immagini che mostrano l'utilizzo di un "number" alias di un foglio "MySheet" per una espressione in PartDesign.

Digitando "M" viene mostrato l'elenco dei nomi disponibili. I tasti freccia permettono di selezionare "MySheet".

Ora digitando un "n" viene mostrata la lista dei nomi alias disponibili in MySheet che iniziano con "n". È possibile selezionare il "number" con il pulsante freccia verso il basso. Quando viene dato un nome valido con un contenuto utilizzabile, il campo risultato presenta il risultato del calcolo.

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

Unità di misura

Il foglio di calcolo utilizza le unità di misura. Se a un numero è associata un'unità, essa viene utilizzata in tutti i calcoli. La moltiplicazione di due lunghezze con l'unità in mm restituisce un'area in mm².

If a cell contains a value which represents a dimension, it should be entered with its associated unit. While in many simple cases one can get by with a dimensionless value, it is unwise to not enter the unit. 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. (This may be better understood by viewing this thread in the FreeCAD forums.)

Nella finestra di dialogo che si apre cliccando con il tasto destro su una cella è possibile commutare da mm a pollici l'unità di lunghezza visualizzata. La cella mostra quindi la lunghezza in pollici, ma il valore utilizzato per i calcoli non cambia. Quando si cambia l'unità mostrata di un dato in ingresso, il risultato di una formula che utilizza questo valore non cambia. Il risultato è ancora ricavato dalla lunghezza in mm.

Dalla finestra di dialogo delle proprietà delle celle un numero senza unità non può essere convertito in un numero con unità. Si può inserire una stringa di unità, che sarà anche mostrata, ma la cella contiene ancora solo un numero senza unità.

A volte è desiderabile sbarazzarsi di un'unità. Questo può essere fatto solo moltiplicando con 1 con un'unità reciproca.

Importazione ed esportazione

I fogli possono essere importati ed esportati nel formato csv che può anche essere letto e scritto da molte altre applicazioni di fogli di calcolo come Microsoft Excel o LibreOffice Calc. Durante l'importazione dei file in FreeCAD, il delimitatore (il carattere che viene utilizzato per separare le colonne) deve essere il carattere di tabulazione (questo può essere impostato durante l'esportazione da altre applicazioni). L'importazione di un file CSV è disponibile tramite il menu Spreadsheet → Import Spreadsheet o facendo clic sull'icona . Questa funzione di importazione non apre file Excel o altri formati di fogli di calcolo.

I fogli di calcolo in formato Excel "xlsx" possono essere importati in un documento FreeCAD tramite il menu File → Import.... I fogli di calcolo Excel possono anche essere aperti da FreeCAD facendo clic nel menu File → Apri ... o facendo clic sull'icona . In questo caso all'interno si crea un nuovo documento con un foglio di calcolo. Sono supportate le seguenti caratteristiche:

  • tutte le funzioni che sono disponibili anche nel foglio di calcolo FreeCAD. Le altre funzioni danno un errore nella cella corrispondente dopo l'importazione.
  • i nomi alias per le celle
  • più di una tabella nei fogli Excel. In questo caso si creano più fogli di calcolo FreeCAD.

Le altre funzionalità non vengono importate nel foglio di calcolo di FreeCAD. L'importazione di Excel è disponibile dalla disponibile dalla versione 0.17di FreeCAD.

Limitazioni attuali

Non è possibile fornire dati per una geometria, ad esempio una lunghezza, in un foglio elettronico e recuperare nello stesso foglio il volume della forma risultante. Ciò creerebbe un riferimento circolare. Questa è una decisione intenzionale. Tuttavia, è possibile utilizzare due differenti fogli: uno come sorgente dei dati per la geometria e l'altro per i rapporti (risultati) sui dati della geometria.

Non è possibile selezionare e copiare più celle contemporaneamente. Si può copiare e incollare solo il contenuto di una cella per volta.

Per le versioni precedenti di FreeCAD vedere Foglio di calcolo - Versione in via di sostituzione

Script di base

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