Implementera Cell Formula Local liknande Range Formula Local

Introduktion

Aspose.Cells för .NET är ett kraftfullt och flexibelt API för hantering av kalkylblad som låter dig skapa, manipulera och konvertera Excel-filer programmatiskt. En av de många funktionerna som erbjuds av Aspose.Cells är möjligheten att anpassa beteendet hos inbyggda Excel-funktioner, inklusive möjligheten att skapa dina egna lokala funktionsnamn. I den här handledningen går vi igenom stegen för att implementera en cellformel som liknar intervallformelns lokala funktionalitet i Aspose.Cells för .NET.

Förutsättningar

Innan du börjar, se till att du har följande:

  1. Microsoft Visual Studio 2010 eller senare installerat på ditt system.
  2. Den senaste versionen av Aspose.Cells for .NET-biblioteket installerad i ditt projekt. Du kan ladda ner biblioteket frånAspose.Cells för .NET nedladdningssida.

Importera paket

För att komma igång måste du importera de nödvändiga paketen i ditt C#-projekt. Lägg till följande med hjälp av satser överst i din kodfil:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

Steg 1: Skapa en klass för anpassade globaliseringsinställningar

Det första steget är att skapa en anpassadGlobalizationSettingsklass som låter dig åsidosätta standardbeteendet för Excel-funktioner. I det här exemplet kommer vi att ändra namnen påSUM ochAVERAGE funktioner tillUserFormulaLocal_SUM ochUserFormulaLocal_AVERAGE, respektive.

class GS : GlobalizationSettings
{
    public override string GetLocalFunctionName(string standardName)
    {
        //Ändra SUM-funktionens namn enligt dina behov.
        if (standardName == "SUM")
        {
            return "UserFormulaLocal_SUM";
        }
        //Ändra AVERAGE-funktionsnamnet enligt dina behov.
        if (standardName == "AVERAGE")
        {
            return "UserFormulaLocal_AVERAGE";
        }
        return "";
    }
}

Steg 2: Skapa en ny arbetsbok och tilldela anpassade globaliseringsinställningar

Skapa sedan en ny Workbook-instans och tilldela den anpassadeGlobalizationSettings implementeringsklass till arbetsbokensSettings.GlobalizationSettings egendom.

//Skapa arbetsbok
Workbook wb = new Workbook();
//Tilldela implementeringsklass GlobalizationSettings
wb.Settings.GlobalizationSettings = new GS();

Steg 3: Öppna det första kalkylbladet och en cell

Låt oss nu komma åt det första kalkylbladet i arbetsboken och en specifik cell i det kalkylbladet.

//Öppna första kalkylbladet
Worksheet ws = wb.Worksheets[0];
//Få tillgång till någon cell
Cell cell = ws.Cells["C4"];

Steg 4: Tilldela formler och skriv ut FormulaLocal

Slutligen, låt oss tilldelaSUM ochAVERAGE formler till cellen och skriv ut resultatetFormulaLocal värden.

//Tilldela SUM-formel och skriv ut dess FormulaLocal
cell.Formula = "SUM(A1:A2)";
Console.WriteLine("Formula Local: " + cell.FormulaLocal);
//Tilldela AVERAGE formel och skriv ut dess FormulaLocal
cell.Formula = "=AVERAGE(B1:B2, B5)";
Console.WriteLine("Formula Local: " + cell.FormulaLocal);

Slutsats

den här handledningen har du lärt dig hur du implementerar en cellformel som liknar den lokala funktionen för intervallformeln i Aspose.Cells för .NET. Genom att skapa en anpassadGlobalizationSettings klass, kan du åsidosätta standardbeteendet för Excel-funktioner och anpassa de lokala funktionsnamnen så att de passar dina behov. Detta kan vara särskilt användbart när du arbetar med lokaliserade eller internationaliserade Excel-dokument.

FAQ’s

Vad är syftet medGlobalizationSettings class in Aspose.Cells?

DeGlobalizationSettings klass i Aspose.Cells låter dig anpassa beteendet hos inbyggda Excel-funktioner, inklusive möjligheten att ändra de lokala funktionsnamnen.

Kan jag åsidosätta beteendet hos andra funktioner änSUM and AVERAGE?

Ja, du kan åsidosätta beteendet för alla inbyggda Excel-funktioner genom att ändraGetLocalFunctionName metod i din egenGlobalizationSettings klass.

Finns det något sätt att återställa funktionsnamnen till deras standardvärden?

Ja, du kan återställa funktionsnamnen genom att antingen ta bort det anpassadeGlobalizationSettings klass eller genom att returnera en tom sträng frånGetLocalFunctionName metod.

Kan jag använda den här funktionen för att skapa anpassade funktioner i Aspose.Cells?

Nej, denGlobalizationSettingsklass är utformad för att åsidosätta beteendet hos inbyggda Excel-funktioner, inte för att skapa anpassade funktioner. Om du behöver skapa anpassade funktioner kan du användaUserDefinedFunction klass i Aspose.Cells.

Är den här funktionen tillgänglig i alla versioner av Aspose.Cells för .NET?

Ja, denGlobalizationSettings klass och möjligheten att anpassa funktionsnamn finns i alla versioner av Aspose.Cells för .NET.