Przejdź do treści stopki
KORZYSTANIE Z IRONXL

Jak zmienić nazwę arkusza Excel w języku C#

Programowe zmienianie nazw plików Excel jest częstym zadaniem w różnych aplikacjach. Niezależnie od tego, czy organizujesz pliki, automatyzujesz zadania, czy zarządzasz danymi, możliwość zmiany nazw plików Excel za pomocą kodu może być bardzo korzystna. W tym artykule przyjrzymy się, jak zmieniać nazwy plików Excel za pomocą biblioteki IronXL od Iron Software.

How to Rename Excel WorkSheet in C

  1. Utwórz projekt w Visual Studio, aby zmieniać nazwy arkuszy Excel.
  2. Install IronXL library from Iron Software.
  3. Zmień nazwę arkuszy Excel za pomocą IronXL.

IronXL library from Iron Software

IronXL to potężna biblioteka Excel dla C#, opracowana przez Iron Software. Pozwala na pracę z dokumentami Excel w twoich projektach .NET bez potrzeby użycia Microsoft Office lub Excel Interop.

Najważniejsze cechy IronXL

  1. Odczyt, edycja i tworzenie plików Excel: IronXL umożliwia odczytywanie, generowanie i edytowanie plików arkuszy kalkulacyjnych Excel (w formatach XLSX, XLS, XLSM, XLTX, CSV, i TSV) bezpośrednio z twojego kodu C# lub VB.NET.
  2. Niepotrzebny Office Interop: Nie będziesz musiał instalować Microsoft Office ani zajmować się złożonościami Office Interop. IronXL zapewnia bezproblemowe doświadczenie.
  3. Obsługa wieloplatformowa: IronXL jest zaprojektowany dla .NET 8, 7, 6, Core, Framework i Azure. Niezależnie od tego, czy tworzysz aplikacje konsolowe, aplikacje webowe, czy oprogramowanie desktopowe, IronXL cię wspiera.
  4. Przyjazne dla użytkownika API: Intuicyjne API pozwala na wykonywanie zadań takich jak odczytywanie wartości komórek, obliczanie wartości zbiorczych, praca z formułami, tworzenie wykresów i inne. Przyjrzyjmy się krótkiemu przykładowi:

    using IronXL;
    
    namespace RenameExcelSheets
    {
        public class Program
        {
            public static void Main()
            {
                Console.WriteLine("Rename Excel Sheets Using IronXL");
    
                // Load an existing Excel file into a WorkBook object
                WorkBook workBook = WorkBook.Load("sample.xlsx"); // sample excel file
    
                // Select the specified worksheet (first sheet)
                WorkSheet workSheet = workBook.WorkSheets[0];
    
                // Read a cell value from the workbook
                int cellValue = workSheet["A2"].IntValue;
    
                // Iterate through a range of cells and print their values
                foreach (var cell in workSheet["A2:A10"])
                {
                    Console.WriteLine($"Cell {cell.AddressString} has value '{cell.Text}'");
                }
    
                // Calculate aggregate values
                decimal sum = workSheet["A2:A10"].Sum();
                decimal max = workSheet["A2:A10"].Max(c => c.DecimalValue);
    
                // Save as a new workbook
                workBook.SaveAs("sampleResult.xlsx");
            }
        }
    }
    using IronXL;
    
    namespace RenameExcelSheets
    {
        public class Program
        {
            public static void Main()
            {
                Console.WriteLine("Rename Excel Sheets Using IronXL");
    
                // Load an existing Excel file into a WorkBook object
                WorkBook workBook = WorkBook.Load("sample.xlsx"); // sample excel file
    
                // Select the specified worksheet (first sheet)
                WorkSheet workSheet = workBook.WorkSheets[0];
    
                // Read a cell value from the workbook
                int cellValue = workSheet["A2"].IntValue;
    
                // Iterate through a range of cells and print their values
                foreach (var cell in workSheet["A2:A10"])
                {
                    Console.WriteLine($"Cell {cell.AddressString} has value '{cell.Text}'");
                }
    
                // Calculate aggregate values
                decimal sum = workSheet["A2:A10"].Sum();
                decimal max = workSheet["A2:A10"].Max(c => c.DecimalValue);
    
                // Save as a new workbook
                workBook.SaveAs("sampleResult.xlsx");
            }
        }
    }
    Imports IronXL
    
    Namespace RenameExcelSheets
    	Public Class Program
    		Public Shared Sub Main()
    			Console.WriteLine("Rename Excel Sheets Using IronXL")
    
    			' Load an existing Excel file into a WorkBook object
    			Dim workBook As WorkBook = WorkBook.Load("sample.xlsx") ' sample excel file
    
    			' Select the specified worksheet (first sheet)
    			Dim workSheet As WorkSheet = workBook.WorkSheets(0)
    
    			' Read a cell value from the workbook
    			Dim cellValue As Integer = workSheet("A2").IntValue
    
    			' Iterate through a range of cells and print their values
    			For Each cell In workSheet("A2:A10")
    				Console.WriteLine($"Cell {cell.AddressString} has value '{cell.Text}'")
    			Next cell
    
    			' Calculate aggregate values
    			Dim sum As Decimal = workSheet("A2:A10").Sum()
    			Dim max As Decimal = workSheet("A2:A10").Max(Function(c) c.DecimalValue)
    
    			' Save as a new workbook
    			workBook.SaveAs("sampleResult.xlsx")
    		End Sub
    	End Class
    End Namespace
    $vbLabelText   $csharpLabel
  5. Funkcjonalność Excela bez kłopotów: IronXL pozwala na tworzenie, ładowanie, zapisywanie i łatwą manipulację arkuszami kalkulacyjnymi. Niezależnie od tego, czy masz do czynienia z metadanymi, uprawnieniami, formułami, czy stylizacją, IronXL upraszcza proces.

Pamiętaj, IronXL jest zaufany przez miliony inżynierów na całym świecie za swoją dokładność, łatwość obsługi i szybkość. Jeśli pracujesz z plikami Excel w C# lub VB.NET, IronXL jest twoją biblioteką do wyboru!

Ustawianie środowiska

Przed zagłębieniem się w kodowanie upewnij się, że masz zainstalowane niezbędne narzędzia:

  1. Visual Studio: Zainstaluj Visual Studio lub inne preferowane IDE dla C#.
  2. Microsoft Excel: Upewnij się, że Microsoft Excel jest zainstalowany na twoim systemie.

Aby zademonstrować przykład rzeczywistego zastosowania zmiany nazwy pliku Excel, napiszmy program, który przyjmuje folder zawierający wszystkie pliki do zmiany nazw i używa IronXL do zmiany nazw wszystkich plików, a następnie przechowuje je w folderze wyjściowym.

Krok 1: Utwórz projekt Visual Studio, aby zmieniać nazwy arkuszy Excel.

Otwórz Visual Studio i utwórz nowy projekt dla dema. Wybierz aplikację konsolową z poniższego szablonu.

Jak zmienic nazwe arkusza w Excel w C#: Rysunek 1 - Tworzenie aplikacji konsolowej

Nadaj nazwy projektowi oraz określ ścieżkę do przechowywania plików.

Jak zmienic nazwe arkusza w Excel w C#: Rysunek 2 - Nazwij projekt

Wybierz wymaganą wersję .NET.

Jak zmienic nazwe arkusza w Excel w C#: Rysunek 3 - Wybierz wymagana wersje .NET

Step 2: Install IronXL library from Iron Software.

Bibliotekę IronXL można zainstalować z menedżera pakietów w Visual Studio, jak poniżej.

Jak zmienic nazwe arkusza w Excel w C#: Rysunek 4 - Wyszukiwanie IronXL za pomoca Menedzera pakietow NuGet

Można też zainstalować z Menedżera Pakietów NuGet z użyciem polecenia.

dotnet add package IronXL.Excel --version 2024.4.4

Jak zmienic nazwe arkusza w Excel w C#: Rysunek 5 - Strona glowna IronXL

Po zainstalowaniu projekt jest gotowy do rozpoczęcia kodowania zmiany nazw arkuszy Excel.

Krok 3: Zmień nazwę arkuszy Excel za pomocą IronXL

Poniżej znajduje się program do zmiany nazw wszystkich plików i arkuszy kalkulacyjnych w katalogu dla aplikacji biznesowych.

Wejście:

Jak zmienic nazwe arkusza w Excel w C#: Rysunek 6 - Przyklad danych wejsciowych arkusza Excel do zmiany nazwy

using System;
using System.IO;
using IronXL;

namespace RenameExcelSheets
{
    public class Program
    {
        public static void Main()
        {
            Console.WriteLine("Demo Rename Excel Sheets Using IronXL");
            Console.WriteLine("Enter Folder where Excel Files are present to rename to FinancialReport2024");

            // Getting input folder path from user
            var folderPath = Console.ReadLine();

            // Check if the provided path is not empty
            if (string.IsNullOrEmpty(folderPath))
            {
                throw new ArgumentException("Path is empty");
            }

            // Check if the given folder path exists
            if (!Directory.Exists(folderPath))
            {
                throw new ArgumentException("Path is Wrong");
            }

            // Get all files in the directory
            var files = Directory.GetFiles(folderPath);

            // Define output directory for renamed files
            var outputPath = Path.Combine(folderPath, "output");
            Directory.CreateDirectory(outputPath); // Ensures the output directory exists

            var index = 0;
            foreach (var file in files)
            {
                // Load an existing Excel file
                WorkBook workBook = WorkBook.Load(file);

                // Select the first worksheet (index 0)
                WorkSheet workSheet = workBook.WorkSheets[0];

                // Rename the worksheet
                workSheet.Name = "FinancialReport2024"; // change the name property

                // Save the modified workbook with a new name in the output folder
                workBook.SaveAs(Path.Combine(outputPath, $"FinancialReport2024_{index++}.xlsx"));
            }
        }
    }
}
using System;
using System.IO;
using IronXL;

namespace RenameExcelSheets
{
    public class Program
    {
        public static void Main()
        {
            Console.WriteLine("Demo Rename Excel Sheets Using IronXL");
            Console.WriteLine("Enter Folder where Excel Files are present to rename to FinancialReport2024");

            // Getting input folder path from user
            var folderPath = Console.ReadLine();

            // Check if the provided path is not empty
            if (string.IsNullOrEmpty(folderPath))
            {
                throw new ArgumentException("Path is empty");
            }

            // Check if the given folder path exists
            if (!Directory.Exists(folderPath))
            {
                throw new ArgumentException("Path is Wrong");
            }

            // Get all files in the directory
            var files = Directory.GetFiles(folderPath);

            // Define output directory for renamed files
            var outputPath = Path.Combine(folderPath, "output");
            Directory.CreateDirectory(outputPath); // Ensures the output directory exists

            var index = 0;
            foreach (var file in files)
            {
                // Load an existing Excel file
                WorkBook workBook = WorkBook.Load(file);

                // Select the first worksheet (index 0)
                WorkSheet workSheet = workBook.WorkSheets[0];

                // Rename the worksheet
                workSheet.Name = "FinancialReport2024"; // change the name property

                // Save the modified workbook with a new name in the output folder
                workBook.SaveAs(Path.Combine(outputPath, $"FinancialReport2024_{index++}.xlsx"));
            }
        }
    }
}
Imports System
Imports System.IO
Imports IronXL

Namespace RenameExcelSheets
	Public Class Program
		Public Shared Sub Main()
			Console.WriteLine("Demo Rename Excel Sheets Using IronXL")
			Console.WriteLine("Enter Folder where Excel Files are present to rename to FinancialReport2024")

			' Getting input folder path from user
			Dim folderPath = Console.ReadLine()

			' Check if the provided path is not empty
			If String.IsNullOrEmpty(folderPath) Then
				Throw New ArgumentException("Path is empty")
			End If

			' Check if the given folder path exists
			If Not Directory.Exists(folderPath) Then
				Throw New ArgumentException("Path is Wrong")
			End If

			' Get all files in the directory
			Dim files = Directory.GetFiles(folderPath)

			' Define output directory for renamed files
			Dim outputPath = Path.Combine(folderPath, "output")
			Directory.CreateDirectory(outputPath) ' Ensures the output directory exists

			Dim index = 0
			For Each file In files
				' Load an existing Excel file
				Dim workBook As WorkBook = WorkBook.Load(file)

				' Select the first worksheet (index 0)
				Dim workSheet As WorkSheet = workBook.WorkSheets(0)

				' Rename the worksheet
				workSheet.Name = "FinancialReport2024" ' change the name property

				' Save the modified workbook with a new name in the output folder
'INSTANT VB WARNING: An assignment within expression was extracted from the following statement:
'ORIGINAL LINE: workBook.SaveAs(Path.Combine(outputPath, string.Format("FinancialReport2024_{0}.xlsx", index++)));
				workBook.SaveAs(Path.Combine(outputPath, $"FinancialReport2024_{index}.xlsx"))
				index += 1
			Next file
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Wyjaśnienie kodu

  1. Program prosi użytkownika o wprowadzenie ścieżki do folderu, gdzie znajdują się pliki Excel.
  2. Sprawdza, czy ścieżka do folderu jest pustym ciągiem i czy folder faktycznie istnieje.
  3. Pobiera wszystkie pliki z określonego folderu.
  4. Iteruje przez te pliki, ładując każdy do obiektu WorkBook z biblioteki IronXL.
  5. Dla każdej książki roboczej zmienia nazwę pierwszego arkusza kalkulacyjnego.
  6. Zapisuje każdą zmodyfikowaną książkę roboczą w folderze "output" w oryginalnym folderze.

Wynik

W poniższym wyjściu widać, że wszystkie trzy pliki zostały przemianowane, a arkusz Excel wewnątrz nich również został przemianowany na FinancialReport2024.

Jak zmienic nazwe arkusza w Excel w C#: Rysunek 7 - Przyklad wyjscia pokazujacego wszystkie arkusze Excel przeksztalcane za pomoca IronXL

Zalety programowego zmieniania nazw arkuszy Excel

  • Wydajność: Automatyzacja redukuje wysiłek manualny i błędy ludzkie związane z ręcznym przemianowaniem, oszczędzając czas i zasoby.
  • Spójność: Automatyczne przemianowanie zapewnia jednolitość i zgodność z konwencjami nazewnictwa w całych arkuszach, poprawiając organizację danych i czytelność.
  • Skalowalność: Programowe przemianowanie arkuszy pozwala na masowe przemianowanie i skalowalność, co czyni go odpowiednim do obsługi dużych zestawów danych lub powtarzalnych zadań.
  • Integracja: Integracja z istniejącymi przepływami pracy lub aplikacjami umożliwia bezproblemowe przetwarzanie danych i zwiększa ogólną produktywność.
  • Dostosowanie: Automatyzacja zapewnia elastyczność, aby dostosować logikę przemianowania w oparciu o konkretne wymagania biznesowe lub kryteria.

Licencjonowanie

IronXL to biblioteka korporacyjna, która działa z umową licencyjną. Więcej na temat licencji można znaleźć tutaj. Klucz licencyjny należy umieścić w pliku appsettings.json tutaj.

{
  "IronXL.License.LicenseKey" : "IRONXL-MYLICENSE-KEY-1EF01"
}

Wnioski

Przemianowanie plików Excel za pomocą C# to prosty proces. Korzystając z biblioteki IronXL od Iron Software, można łatwo przemieszczać pliki Excel w swoich aplikacjach C#. Ta biblioteka jest przydatnym narzędziem dla deweloperów do wszystkich operacji na arkuszach Excel, czy to odczytu, zapisywania, czy zarządzania.

Teraz, gdy nauczyłeś się, jak programowo zmieniać nazwy plików Excel, możesz włączyć tę funkcję do swoich projektów C#, aby usprawnić zadania zarządzania plikami i poprawić możliwości automatyzacji.

Często Zadawane Pytania

Jak mogę zmienić nazwę arkusza Excel w języku C# bez użycia Interop?

Możesz zmienić nazwę arkusza Excel w języku C# bez użycia Interop, korzystając z biblioteki IronXL. Załaduj plik Excel do obiektu WorkBook, wybierz arkusz, którego nazwę chcesz zmienić, i ustaw jego nową nazwę za pomocą właściwości Name.

Jakie są zalety korzystania z IronXL do manipulacji plikami Excel?

IronXL zapewnia zaawansowane możliwości manipulacji plikami Excel, takie jak odczyt, edycja i tworzenie plików Excel bez konieczności korzystania z programu Microsoft Excel lub Interop. Obsługuje różne formaty, takie jak XLSX i CSV, oferuje przyjazny dla użytkownika interfejs API oraz umożliwia automatyzację i integrację z projektami .NET.

Czy można zautomatyzować zadania w Excelu w języku C#?

Tak, korzystając z biblioteki IronXL, można zautomatyzować różne zadania programu Excel w języku C#, takie jak zmiana nazw arkuszy, odczytywanie wartości komórek, obliczanie sum i wiele innych, a wszystko to bez konieczności korzystania z programu Microsoft Excel.

Jakie kroki należy wykonać, aby skonfigurować IronXL dla projektu C#?

Aby skonfigurować IronXL w projekcie C#, należy najpierw utworzyć projekt Visual Studio, a następnie zainstalować bibliotekę IronXL za pomocą menedżera pakietów NuGet, używając polecenia: dotnet add package IronXL.Excel --version 2024.4.4. Następnie można zacząć korzystać z jej funkcji do manipulowania plikami Excel.

Czy IronXL obsługuje wiele formatów Excel?

Tak, IronXL obsługuje wiele formatów Excel, w tym XLSX, XLS, XLSM, XLTX, CSV i TSV, co pozwala na różnorodne możliwości manipulacji plikami w aplikacjach .NET.

Czy potrzebuję licencji, aby używać IronXL w moim projekcie?

Tak, do korzystania z IronXL w projekcie wymagana jest licencja. Po uzyskaniu klucza licencyjnego należy umieścić go w pliku appsettings.json projektu, aby umożliwić pełną funkcjonalność.

Jak rozwiązywać typowe problemy podczas korzystania z IronXL?

Typowe problemy związane z używaniem IronXL można często rozwiązać, upewniając się, że biblioteka jest poprawnie zainstalowana i skonfigurowana, sprawdzając dostępność aktualizacji oraz zapoznając się z oficjalną dokumentacją w celu uzyskania wskazówek dotyczących konkretnych funkcji.

Jakie korzyści daje programowa zmiana nazw arkuszy w Excelu?

Programowa zmiana nazw arkuszy Excel poprawia wydajność i skalowalność, zapewnia spójność, płynnie integruje się z istniejącymi procesami pracy oraz umożliwia dostosowanie do konkretnych potrzeb biznesowych.

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podrę...

Czytaj więcej

Zespół wsparcia Iron

Jesteśmy online 24 godziny, 5 dni w tygodniu.
Czat
E-mail
Zadzwoń do mnie