Impostazione della formula condivisa

Impostazione della formula condivisa utilizzando Aspose.Cells

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 o dati
cose da fare:immagine_alt_testo

Si desidera aggiungere una funzione in B2 che calcolerà l’imposta sulle vendite per la prima riga di dati. La tassa è9% La formula che calcola l’imposta sulle vendite è:"=A2*0.09". Questo articolo spiega come applicare questa formula con Aspose.Cells.

Aspose.Cells consente di specificare una formula utilizzando ilCell.Formulaproprietà. Esistono due opzioni per aggiungere formule alle altre celle (B3, B4, B5 e così via) nella colonna.

O fai quello che hai fatto per la prima cella, impostando effettivamente la formula per ogni cella, aggiornando di conseguenza il riferimento di cella (A30,09, A40.09, A5*0.09 e così via). Ciò richiede l’aggiornamento dei riferimenti di cella per ogni riga. Richiede inoltre Aspose.Cells per analizzare ogni formula individualmente, il che può richiedere molto tempo per fogli di calcolo di grandi dimensioni e formule complesse. Aggiunge anche ulteriori righe di codici sebbene i loop possano ridurli in qualche modo.

Un altro approccio consiste nell’usare aformula condivisa Con una formula condivisa, le formule vengono aggiornate automaticamente per i riferimenti di cella in ogni riga in modo che l’imposta venga calcolata correttamente. IlCell.SetSharedFormulametodo è più efficiente del primo metodo.

L’esempio seguente mostra come usarlo.

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// The path to the documents directory.
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
// Instantiate a Workbook from existing file
Workbook workbook = new Workbook(dataDir + "source.xlsx");
// Get the cells collection in the first worksheet
Cells cells = workbook.Worksheets[0].Cells;
// Apply the shared formula in the range i.e.., B2:B14
cells["B2"].SetSharedFormula("=A2*0.09", 13, 1);
// Save the excel file
workbook.Save(dataDir + "Output_out.xlsx", SaveFormat.Xlsx);