Adlandırılmış Aralık için Formül Ayarlama
Adlandırılmış Aralık için Formül Ayarlama
Excel uygulaması gibi, Aspose.Cells API’leri, RefersTo özelliğini kullanırken adlandırılmış bir aralık için formül belirtme yeteneği sağlar. Bu özelliğin çeşitli kullanılabilir senaryoları olabilir, bunlardan bazıları aşağıda detaylandırılmıştır.
Basit Formül Ayarlama Adlandırılmış Aralık için
Basit bir formül, aynı (veya farklı) çalışma sayfasındaki başka bir hücreye bir referans olabilir. Aşağıdaki örnek, yeni bir elektronik tablo oluşturur ve referansını başka bir hücreye ayarlar.
// 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); | |
// Create an instance of Workbook | |
Workbook book = new Workbook(); | |
// Get the WorksheetCollection | |
WorksheetCollection worksheets = book.Worksheets; | |
// Add a new Named Range with name "NewNamedRange" | |
int index = worksheets.Names.Add("NewNamedRange"); | |
// Access the newly created Named Range | |
Name name = worksheets.Names[index]; | |
// Set RefersTo property of the Named Range to a formula. Formula references another cell in the same worksheet | |
name.RefersTo = "=Sheet1!$A$3"; | |
// Set the formula in the cell A1 to the newly created Named Range | |
worksheets[0].Cells["A1"].Formula = "NewNamedRange"; | |
// Insert the value in cell A3 which is being referenced in the Named Range | |
worksheets[0].Cells["A3"].PutValue("This is the value of A3"); | |
// Calculate formulas | |
book.CalculateFormula(); | |
// Save the result in XLSX format | |
book.Save(dataDir + "output_out.xlsx"); |
Karmaşık Formül Ayarlama Adlandırılmış Aralık için
Karmaşık bir formül, bir dinamik aralık veya farklı çalışma sayfalarındaki birden çok hücreye yayılan bir formül olabilir. Aşağıdaki örnek, bir değerin konumuna bağlı olarak INDEX işlevini kullanarak dinamik bir aralık oluşturur.
// 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); | |
// Create an instance of Workbook | |
Workbook book = new Workbook(); | |
// Get the WorksheetCollection | |
WorksheetCollection worksheets = book.Worksheets; | |
// Add a new Named Range with name "data" | |
int index = worksheets.Names.Add("data"); | |
// Access the newly created Named Range from the collection | |
Name data = worksheets.Names[index]; | |
// Set RefersTo property of the Named Range to a cell range in same worksheet | |
data.RefersTo = "=Sheet1!$A$1:$A$10"; | |
// Add another Named Range with name "range" | |
index = worksheets.Names.Add("range"); | |
// Access the newly created Named Range from the collection | |
Name range = worksheets.Names[index]; | |
// Set RefersTo property to a formula using the Named Range data | |
range.RefersTo = "=INDEX(data,Sheet1!$A$1,1):INDEX(data,Sheet1!$A$1,9)"; | |
// Save the workbook | |
book.Save(dataDir + "output_out.xlsx"); |
Aşağıda, farklı çalışma sayfalarındaki 2 hücreden değerleri toplamak için adlandırılmış bir aralık kullanan başka bir örnek bulunmaktadır.
// 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); | |
// Create an instance of Workbook | |
Workbook book = new Workbook(); | |
// Get the WorksheetCollection | |
WorksheetCollection worksheets = book.Worksheets; | |
// Insert some data in cell A1 of Sheet1 | |
worksheets["Sheet1"].Cells["A1"].PutValue(10); | |
// Add a new Worksheet and insert a value to cell A1 | |
worksheets[worksheets.Add()].Cells["A1"].PutValue(10); | |
// Add a new Named Range with name "range" | |
int index = worksheets.Names.Add("range"); | |
// Access the newly created Named Range from the collection | |
Name range = worksheets.Names[index]; | |
// Set RefersTo property of the Named Range to a SUM function | |
range.RefersTo = "=SUM(Sheet1!$A$1,Sheet2!$A$1)"; | |
// Insert the Named Range as formula to 3rd worksheet | |
worksheets[worksheets.Add()].Cells["A1"].Formula = "range"; | |
// Calculate formulas | |
book.CalculateFormula(); | |
// Save the result in XLSX format | |
book.Save(dataDir + "output_out.xlsx"); |