Utilisation du paramètre de formule dans le champ Smart Marker

Scénarios d’utilisation possibles

Parfois, vous souhaitez intégrer une formule dans le champ Smart Marker. Cet article décrit comment utiliser le paramètre Formule pour intégrer une formule dans le champ Smart Marker.

Utilisation du paramètre de formule dans le champ Smart Marker

Le code d’exemple suivant intègre la formule dans le champ Smart Marker nommé TestFormula et son nom de la source de données est MyDataSource, de sorte que le champ complet avec le paramètre de formule ressemble à &=MyDataSource.TestFormula(formule) et après l’exécution du code, le fichier Excel de sortie final aura des formules dans les cellules de A1 à A5.

Code d’exemple

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
//Create a datatable and add column named TestFormula
DataTable dt = new DataTable();
dt.Columns.Add("TestFormula");
//Create first row with formula (which basically concatenates three strings)
DataRow dr = dt.NewRow();
dr["TestFormula"] = "=\"01-This \" & \"is \" & \"concatenation\"";
dt.Rows.Add(dr);
//Create second row like above
dr = dt.NewRow();
dr["TestFormula"] = "=\"02-This \" & \"is \" & \"concatenation\"";
dt.Rows.Add(dr);
//Create third row like above
dr = dt.NewRow();
dr["TestFormula"] = "=\"03-This \" & \"is \" & \"concatenation\"";
dt.Rows.Add(dr);
//Create fourth row like above
dr = dt.NewRow();
dr["TestFormula"] = "=\"04-This \" & \"is \" & \"concatenation\"";
dt.Rows.Add(dr);
//Create fifth row like above
dr = dt.NewRow();
dr["TestFormula"] = "=\"05-This \" & \"is \" & \"concatenation\"";
dt.Rows.Add(dr);
//Set the name of the data table
dt.TableName = "MyDataSource";
//Create a workbook
Workbook wb = new Workbook();
//Access first worksheet
Worksheet ws = wb.Worksheets[0];
//Put the smart marker field with formula parameter in cell A1
ws.Cells["A1"].PutValue("&=MyDataSource.TestFormula(Formula)");
//Create workbook designer, set data source and process it
WorkbookDesigner wd = new WorkbookDesigner(wb);
wd.SetDataSource(dt);
wd.Process();
//Save the workbook in xlsx format
wb.Save(outputDir + "outputUsingFormulaParameterInSmartMarkerField.xlsx");