Excel VBA Range.FormulaLocal benzeri Cell.FormulaLocal ı Uygula

Olası Kullanım Senaryoları

Microsoft Excel Formülleri farklı yerel ayarlar, bölgeler veya dillerde farklı adlara sahip olabilir. Örneğin, SUM fonksiyonu Almanca’da SUMME olarak adlandırılır. Aspose.Cells, diğer dillerdeki fonksiyon adlarıyla çalışamaz. Microsoft Excel VBA’da, dil veya bölgeye göre işlevin adını döndüren Range.FormulaLocal özelliği bulunmaktadır. Aspose.Cells aynı amaç için Cell.FormulaLocal özelliğini sağlar. Ancak bu özellik, sadece GlobalizationSettings.GetLocalFunctionName(string standardName) metodunu uyguladığınızda çalışacaktır.

Excel VBA Range.FormulaLocal benzeri Cell.FormulaLocal’ı uygulamanın nasıl olduğunu aşağıdaki örnek kod açıklar. Metod, standart fonksiyonun yerel adını döndürür. Standart fonksiyon adı SUM ise UserFormulaLocal_SUM döndürür. Kodu ihtiyaçlarınıza göre değiştirebilir ve doğru yerel fonksiyon adlarını döndürebilirsiniz, örneğin SUM Almanca’da SUMME ve Rusça’da TEXT için ТЕКСТ olur. Lütfen aşağıdaki örnek kodun konsol çıktısını inceleyin.

Aşağıdaki örnek kod, GlobalizationSettings.GetLocalFunctionName(string standardName) yöntemini uygulamanın nasıl yapıldığını açıklar. Bu yöntem, standart işlevin yerel adını döndürür. Standart işlev adı SUM ise UserFormulaLocal_SUM‘ı döndürür. Kodu ihtiyaçlarınıza göre değiştirebilir ve doğru yerel işlev adlarını döndürebilirsiniz. Örneğin; SUM Almanca’da SUMME ve TEXT Rusça’da ТЕКСТ tarafından değiştirilir. Ayrıca aşağıdaki örneğin konsol çıktısını referans için aşağıdaki örnek kodu görün.

Örnek Kod

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Aspose.Cells.Examples.CSharp.WorkbookSettings
{
class Implement_Cell_FormulaLocal_SimilarTo_Range_FormulaLocal
{
//Implement GlobalizationSettings class
class GS : GlobalizationSettings
{
public override string GetLocalFunctionName(string standardName)
{
//Change the SUM function name as per your needs.
if (standardName == "SUM")
{
return "UserFormulaLocal_SUM";
}
//Change the AVERAGE function name as per your needs.
if (standardName == "AVERAGE")
{
return "UserFormulaLocal_AVERAGE";
}
return "";
}//GetLocalFunctionName
}//GS:GlobalizationSettings
public static void Run()
{
//Create workbook
Workbook wb = new Workbook();
//Assign GlobalizationSettings implementation class
wb.Settings.GlobalizationSettings = new GS();
//Access first worksheet
Worksheet ws = wb.Worksheets[0];
//Access some cell
Cell cell = ws.Cells["C4"];
//Assign SUM formula and print its FormulaLocal
cell.Formula = "SUM(A1:A2)";
Console.WriteLine("Formula Local: " + cell.FormulaLocal);
//Assign AVERAGE formula and print its FormulaLocal
cell.Formula = "=AVERAGE(B1:B2, B5)";
Console.WriteLine("Formula Local: " + cell.FormulaLocal);
}
}
}

Konsol Çıktısı

Formula Local: =UserFormulaLocal_SUM(A1:A2)

Formula Local: =UserFormulaLocal_AVERAGE(B1:B2,B5)