تنفيذ Cell.FormulaLocal مماثل لـ Excel VBA Range.FormulaLocal
سيناريوهات الاستخدام المحتملة
قد يكون لدى صيغ Microsoft Excel أسماء مختلفة في لغات أو مناطق أو لهجات مختلفة. على سبيل المثال، وظيفة SUM تسمى SUMME في الألمانية. لا يمكن لـ Aspose.Cells العمل مع أسماء الدوال غير الإنجليزية. في VBA الخاص بـ Microsoft Excel، هناك خاصية Range.FormulaLocal التي تعيد اسم الوظيفة حسب لغتها أو منطقتها. توفر Aspose.Cells أيضًا الخاصية Cell.FormulaLocal لهذا الغرض. ومع ذلك، ستعمل هذه الخاصية فقط عند تنفيذ GlobalizationSettings.getLocalFunctionName(String standardName)
تنفيذ Cell.FormulaLocal مماثل لـ Excel VBA Range.FormulaLocal
يوضح الكود النموذجي التالي كيفية تنفيذ طريقة GlobalizationSettings.getLocalFunctionName(String standardName)، وتُرجع الاسم المحلي للدالة المعتمدة، فعلى سبيل المثال، إذا كان اسم الدالة الموحد SUM، فإنها تُرجع UserFormulaLocal_SUM. يمكنك تعديل الكود وفقًا لاحتياجاتك وإرجاع أسماء الدوال المحلية الصحيحة، مثلاً، SUM يُسمى SUMME في الألمانية و TEXT يُسمى ТЕКСТ في الروسية. يرجى أيضًا الاطلاع على الناتج على الكونسول للكود النموذجي أدناه كمراجعة.
الكود المثالي
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
package AsposeCellsExamples.WorkbookSettings; | |
import com.aspose.cells.*; | |
import AsposeCellsExamples.Utils; | |
public class Implement_Cell_FormulaLocal_SimilarTo_Range_FormulaLocal { | |
//Implement GlobalizationSettings class | |
class GS extends GlobalizationSettings { | |
public String getLocalFunctionName(String standardName) | |
{ | |
//Change the SUM function name as per your needs. | |
if(standardName.equals("SUM")) | |
{ | |
return "UserFormulaLocal_SUM"; | |
} | |
//Change the AVERAGE function name as per your needs. | |
if (standardName.equals("AVERAGE")) | |
{ | |
return "UserFormulaLocal_AVERAGE"; | |
} | |
return ""; | |
}//getLocalFunctionName | |
}//GS extends GlobalizationSettings | |
public void Run() throws Exception { | |
//Create workbook | |
Workbook wb = new Workbook(); | |
//Assign GlobalizationSettings implementation class | |
wb.getSettings().setGlobalizationSettings(new GS()); | |
//Access first worksheet | |
Worksheet ws = wb.getWorksheets().get(0); | |
//Access some cell | |
Cell cell = ws.getCells().get("C4"); | |
//Assign SUM formula and print its FormulaLocal | |
cell.setFormula("SUM(A1:A2)"); | |
System.out.println("Formula Local: " + cell.getFormulaLocal()); | |
//Assign AVERAGE formula and print its FormulaLocal | |
cell.setFormula("=AVERAGE(B1:B2, B5)"); | |
System.out.println("Formula Local: " + cell.getFormulaLocal()); | |
} | |
public static void main(String[] args) throws Exception { | |
System.out.println("Aspose.Cells for Java Version: " + CellsHelper.getVersion()); | |
Implement_Cell_FormulaLocal_SimilarTo_Range_FormulaLocal pg = new Implement_Cell_FormulaLocal_SimilarTo_Range_FormulaLocal(); | |
pg.Run(); | |
// Print the message | |
System.out.println("Implement_Cell_FormulaLocal_SimilarTo_Range_FormulaLocal executed successfully."); | |
} | |
} |
مخرجات الوحدة
Formula Local: =UserFormulaLocal_SUM(A1:A2)
Formula Local: =UserFormulaLocal_AVERAGE(B1:B2,B5)