Impostazione Formula Condivisa

Impostare una formula condivisa usando Aspose.Cells for Python via .NET

Supponiamo di avere un foglio di lavoro pieno di dati nel formato che assomiglia al seguente foglio di lavoro di esempio.

File di input con una colonna di dati
todo:image_alt_text

Vuoi aggiungere una funzione in B2 che calcoli l’imposta sulle vendite per la prima riga di dati. L’imposta è 9%. La formula che calcola l’imposta sulle vendite è: "=A2*0.09". Questo articolo spiega come applicare questa formula con Aspose.Cells for Python via .NET.

Aspose.Cells for Python via .NET ti consente di specificare una formula usando la proprietà Cell.formula. Ci sono due opzioni per aggiungere formule alle altre celle (B3, B4, B5, ecc.) nella colonna.

Puoi fare ciò che hai fatto per la prima cella, impostando effettivamente la formula per ogni cella, aggiornando di conseguenza il riferimento della cella (A30.09, A40.09, A5*0.09 e così via). Ciò richiede di aggiornare i riferimenti di cella per ogni riga. Richiede anche che Aspose.Cells for Python via .NET analizzi ogni formula singolarmente, il che può richiedere molto tempo per fogli di calcolo di grandi dimensioni e formule complesse. Aggiunge anche linee di codice extra anche se i cicli possono ridurle in qualche modo.

Un altro approccio è utilizzare una formula condivisa. Con una formula condivisa, le formule vengono aggiornate automaticamente per i riferimenti alle celle in ogni riga in modo che l’imposta venga calcolata correttamente. Il metodo Cell.set_shared_formula è più efficiente del primo metodo.

L’esempio seguente mostra come utilizzarla.

from aspose.cells import SaveFormat, Workbook
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# The path to the documents directory.
dataDir = RunExamples.GetDataDir(".")
# Instantiate a Workbook from existing file
workbook = Workbook(dataDir + "source.xlsx")
# Get the cells collection in the first worksheet
cells = workbook.worksheets[0].cells
# Apply the shared formula in the range i.e.., B2:B14
cells.get("B2").set_shared_formula("=A2*0.09", 13, 1)
# Save the excel file
workbook.save(dataDir + "Output_out.xlsx", SaveFormat.XLSX)