Implementacja formuły komórki lokalnej podobnej do formuły zakresu lokalnej
Wstęp
Aspose.Cells dla .NET to potężny i elastyczny interfejs API do manipulacji arkuszami kalkulacyjnymi, który umożliwia programowe tworzenie, manipulowanie i konwertowanie plików Excel. Jedną z wielu funkcji oferowanych przez Aspose.Cells jest możliwość dostosowania zachowania wbudowanych funkcji Excel, w tym możliwość tworzenia własnych lokalnych nazw funkcji. W tym samouczku przeprowadzimy Cię przez kroki implementacji formuły komórki, która jest podobna do lokalnej funkcjonalności formuły zakresu w Aspose.Cells dla .NET.
Wymagania wstępne
Zanim zaczniesz, upewnij się, że masz następujące rzeczy:
- Na Twoim komputerze zainstalowany jest program Microsoft Visual Studio 2010 lub nowszy.
- Najnowsza wersja biblioteki Aspose.Cells for .NET zainstalowana w Twoim projekcie. Możesz pobrać bibliotekę ze stronyStrona pobierania Aspose.Cells dla .NET.
Importuj pakiety
Aby rozpocząć, musisz zaimportować niezbędne pakiety do swojego projektu C#. Dodaj następujące instrukcje using na górze pliku kodu:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
Krok 1: Utwórz klasę niestandardowych ustawień globalizacji
Pierwszym krokiem jest utworzenie niestandardowegoGlobalizationSettings
klasa, która pozwoli Ci zastąpić domyślne zachowanie funkcji Excela. W tym przykładzie zmienimy nazwySUM
IAVERAGE
funkcje doUserFormulaLocal_SUM
IUserFormulaLocal_AVERAGE
, odpowiednio.
class GS : GlobalizationSettings
{
public override string GetLocalFunctionName(string standardName)
{
//Zmień nazwę funkcji SUMA według swoich potrzeb.
if (standardName == "SUM")
{
return "UserFormulaLocal_SUM";
}
//Zmień nazwę funkcji ŚREDNIA zgodnie ze swoimi potrzebami.
if (standardName == "AVERAGE")
{
return "UserFormulaLocal_AVERAGE";
}
return "";
}
}
Krok 2: Utwórz nowy skoroszyt i przypisz niestandardowe ustawienia globalizacji
Następnie utwórz nową instancję skoroszytu i przypisz ją niestandardowoGlobalizationSettings
klasa implementacyjna do skoroszytuSettings.GlobalizationSettings
nieruchomość.
//Utwórz skoroszyt
Workbook wb = new Workbook();
//Przypisz klasę implementacji GlobalizationSettings
wb.Settings.GlobalizationSettings = new GS();
Krok 3: Dostęp do pierwszego arkusza kalkulacyjnego i komórki
Teraz uzyskajmy dostęp do pierwszego arkusza kalkulacyjnego w skoroszycie i konkretnej komórki w tym arkuszu.
//Uzyskaj dostęp do pierwszego arkusza kalkulacyjnego
Worksheet ws = wb.Worksheets[0];
//Uzyskaj dostęp do jakiejś komórki
Cell cell = ws.Cells["C4"];
Krok 4: Przypisz formuły i wydrukuj formułęLocal
Na koniec przypiszmySUM
IAVERAGE
formuły do komórki i wydrukuj wynikFormulaLocal
wartości.
//Przypisz formułę SUMA i wydrukuj jej FormulaLocal
cell.Formula = "SUM(A1:A2)";
Console.WriteLine("Formula Local: " + cell.FormulaLocal);
//Przypisz formułę AVERAGE i wydrukuj jej FormulaLocal
cell.Formula = "=AVERAGE(B1:B2, B5)";
Console.WriteLine("Formula Local: " + cell.FormulaLocal);
Wniosek
tym samouczku dowiedziałeś się, jak zaimplementować formułę komórki, która jest podobna do lokalnej funkcjonalności formuły zakresu w Aspose.Cells dla .NET. Tworząc niestandardowąGlobalizationSettings
class, możesz zastąpić domyślne zachowanie funkcji Excela i dostosować lokalne nazwy funkcji do swoich potrzeb. Może to być szczególnie przydatne podczas pracy z zlokalizowanymi lub zinternacjonalizowanymi dokumentami Excela.
Najczęściej zadawane pytania
Jaki jest celGlobalizationSettings
class in Aspose.Cells?
TenGlobalizationSettings
Klasa w Aspose.Cells umożliwia dostosowanie zachowania wbudowanych funkcji programu Excel, łącznie z możliwością zmiany lokalnych nazw funkcji.
Czy mogę zastąpić zachowanie funkcji innych niżSUM
and AVERAGE
?
Tak, możesz zmienić zachowanie dowolnej wbudowanej funkcji programu Excel, modyfikującGetLocalFunctionName
metoda w Twoim niestandardowymGlobalizationSettings
klasa.
Czy istnieje sposób na przywrócenie domyślnych wartości nazw funkcji?
Tak, możesz zresetować nazwy funkcji, usuwając niestandardoweGlobalizationSettings
klasy lub zwracając pusty ciąg znaków zGetLocalFunctionName
metoda.
Czy mogę użyć tej funkcji do tworzenia niestandardowych funkcji w Aspose.Cells?
Nie,GlobalizationSettings
Klasa jest zaprojektowana do nadpisywania zachowania wbudowanych funkcji programu Excel, a nie do tworzenia funkcji niestandardowych. Jeśli musisz utworzyć funkcje niestandardowe, możesz użyćUserDefinedFunction
Klasa w Aspose.Cells.
Czy ta funkcja jest dostępna we wszystkich wersjach Aspose.Cells dla .NET?
Tak,GlobalizationSettings
Klasa i możliwość dostosowywania nazw funkcji są dostępne we wszystkich wersjach Aspose.Cells dla platformy .NET.