IRONSOFTWAREHOME
KORZYSTANIE Z IRONXL

Jak automatycznie dopasować komórki w programie Excel przy użyciu języka C#

Curtis Chau
Curtis Chau
Updated: 28 czerwca 2026

W dzisiejszym świecie opartym na danych Microsoft Excel pozostaje niezbędnym narzędziem dla firm i profesjonalistów. Niezależnie od tego, czy chodzi o obliczenia, tworzenie raportów, czy wizualizacje danych, wszechstronność Excela jest niezrównana. Jednakże, w przypadku programowego manipulowania plikami Excel w C#, developerzy często napotykają na trudności. W tym miejscu IronXL biblioteka wchodzi do gry, oferując płynne rozwiązanie dla automatyzacji Excela w środowisku C#.

IronXL biblioteka od Iron Software dostarcza intuicyjnych interfejsów API do obsługi dokumentów Excel bezproblemowo w środowiskach C# .NET i VB.NET. Dzięki IronXL nie ma potrzeby instalowania komponentów Microsoft Office ani Excel Interop. Umożliwia programistom bez wysiłku odczytywanie, edytowanie i tworzenie plików arkuszy Excel, oferując pełne wsparcie dla różnych frameworków .NET, w tym .NET 8, 7, 6, Core Frameworks i środowisk Azure.

W tym artykułe dowiemy się, jak automatycznie dopasować szerokość i wysokość kolumn w programie Excel przy użyciu języka C# i biblioteki IronXL.

  1. Utwórz projekt Visual Studio do demonstracji autofit komórek w arkuszu Excel.
  2. Zainstaluj bibliotekę IronXL w projekcie.
  3. Autofit szerokość kolumny używając biblioteki IronXL.
  4. Autofit wysokość wiersza używając biblioteki IronXL.
  5. Ręczne ustawianie szerokości i wysokości kolumny i wiersza używając biblioteki IronXL.

IronXL

IronXL biblioteka jest wszechstronną biblioteką .NET zaprojektowaną, aby uprościć manipulację arkuszami Excel dla programistów C#. Oferując szybki i intuicyjny interfejs API, IronXL umożliwia użytkownikom bez wysiłku uzyskiwanie dostępu, modyfikowanie i generowanie plików Excel bez polegania na Office Interop. Kompatybilność obejmuje różne frameworki .NET, w tym .NET Core i Azure, bez wymagania specjalnych zależności ani instalacji Microsoft Office. Dzięki wsparciu dla wielu języków .NET, takich jak C#, VB.NET i F#, IronXL obsługuje szeroki zakres scenariuszy deweloperskich, w tym aplikacje konsolowe, internetowe i desktopowe. Co więcej, kompatybilność IronXL obejmuje różne platformy, w tym Windows, Linux, macOS, Docker, Azure i AWS, co czyni ją niezbędnym narzędziem dla deweloperów poszukujących efektywnej integracji Excel w różnych środowiskach.

Kluczowe cechy biblioteki IronXL

  1. Łatwa integracja: IronXL bezproblemowo integruje się z aplikacjami C#, dostarczając prostego i intuicyjnego API do automatyzacji Excela. Programiści mogą szybko rozpocząć pracę z minimalnym czasem krzywej uczenia się.
  2. Odczyt i zapis plików Excel: Dzięki IronXL możesz bez wysiłku odczytywać dane z istniejących plików Excel i zapisywać dane do nowych lub istniejących arkuszy kalkulacyjnych. Ta możliwość jest niezbędna do zadań takich jak import/eksport danych i generowanie raportów.
  3. Formatowanie i stylizacja: IronXL umożliwia stosowanie formatowania i stylizacji do komórek Excel, w tym czcionek, kolorów, obramowań i nie tylko. To zapewnia, że wygenerowane pliki Excel zachowują profesjonalny wygląd.
  4. Wsparcie formuł: Potrzebujesz przeprowadzać skomplikowane obliczenia lub stosować formuły do danych Excel? IronXL zapewnia wsparcie dla formuł Excel, co pozwala na automatyzację obliczeń i manipulacji danymi.
  5. Autofit komórek: Jedną z przydatnych funkcji oferowanych przez IronXL jest możliwość autofit komórek w Excel, co zapewnia, że zawartość pasuje ściśle do każdej komórki, bez skrócenia.

Krok 1: Utwórz projekt Visual Studio do demonstracji autofit komórek w arkuszu Excel.

Aby rozpocząć, stwórz projekt Visual Studio, jak pokazano poniżej. Wybierz szablon aplikacji konsolowej z listy

Jak automatycznie dopasować komórki w Excelu używając C#: Rysunek 1 - Otwórz Visual Studio i dodaj nowy projekt typu Aplikacja Konsolowa w C#.

Podaj nazwę projektu i lokalizację

Jak automatycznie dopasować komórki w Excelu używając C#: Rysunek 2 - Następnie określ nazwę projektu i lokalizację.

Wybierz wymaganą wersję .NET z listy rozwijanej i naciśnij utwórz

Jak automatycznie dopasować komórki w Excelu używając C#: Rysunek 3 - Następnie wybierz wymaganą wersję .NET Framework i kliknij Stwórz.

Krok 2: Zainstaluj bibliotekę IronXL w projekcie.

Zainstaluj bibliotekę IronXL z Menedżera Pakietów NuGet w Visual Studio

Jak automatycznie dopasować komórki w Excelu używając C#: Rysunek 4 - Zainstaluj IronXL używając Zarządzania Pakietami NuGet dla Rozwiązania, wyszukując

Pakiet można również zainstalować, korzystając z polecenia NuGet line

dotnet add package IronXL.Excel --version 2024.3.20

Jak automatycznie dopasować komórki w Excelu używając C#: Rysunek 5 - Pakiet NuGet IronXL.Excel

Z tym jesteśmy gotowi do rozpoczęcia kodowania.

Krok 3: Autofit szerokość kolumny używając biblioteki IronXL

Metoda AutoSizeColumn z biblioteki IronXL dostosowuje szerokość kolumny do zawartości. Ta metoda oblicza szerokość tekstu na podstawie czcionki użytej w komórce. Jeśli dokładna czcionka nie jest dostępna w systemie, spróbuje ją zmierzyć za pomocą domyślnej czcionki. Jeśli nie zostanie znaleziona żadna czcionka domyślna, spróbuje wykorzystać dowolną dostępną czcionkę. Jednakże, jeśli nie zostaną znalezione żadne czcionki, zostanie wyrzucony wyjątek. Używa indeksu kolumny zaczynając od zera jako parametru. Musi być w granicach określonych przez 0 i (ColumnCount - 1). ArgumentException jest zgłaszany, jeśli podany columnIndex znajduje się poza zakresem. SixLabors.Fonts.FontException jest zgłaszany, gdy na komputerze nie są zainstalowane żadne czcionki.

Teraz zobaczmy, jak możemy użyć tego do zmiany rozmiaru pliku Excel. Możesz pobrać przykładowy plik Excel z tutaj.

Plik wejściowy

Tutaj możesz zobaczyć, że szerokości kolumn nie są właściwie zdefiniowane, co sprawia, że jest to bardzo trudne do odczytania. Teraz zobaczmy jak możemy użyć biblioteki IronXL do automatycznego dopasowania szerokości kolumn w arkuszu Excel.

Jak automatycznie dopasować komórki w Excelu używając C#: Rysunek 6 - Plik wejściowy Excel

using IronXL;
// Load example spreadsheet
WorkBook workBook = WorkBook.Load("FinancialSample.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;
var colCount = workSheet.Columns.Count();

for (int i = 0; i < colCount; i++)
{ 
    // Auto-fit column width for index i
    workSheet.AutoSizeColumn(i);
}

// Save the autofitted workbook as a new file
workBook.SaveAs("autoResize.xlsx"); // Result file

Wyjaśnienie kodu

  1. Początkowo ładujemy FinancialSample.xlsx za pomocą metody WorkBook.Load().
  2. Następnie otrzymujemy licznik kolumn do dostosowań.
  3. Iterujemy przez wszystkie indeksy kolumn, aby automatycznie dostosować szerokości kolumn.
  4. Na koniec zapisujemy wyniki do nowego pliku o nazwie autoResize.xlsx.

Plik wyjściowy

Poniżej możesz zobaczyć, że wszystkie kolumny są automatycznie dostosowane i widoczne.

Jak automatycznie dopasować komórki w Excelu używając C#: Rysunek 7 - Wyjściowy excel z automatycznie dopasowaną szerokością kolumn.

Krok 4: Autofit wysokość wiersza przy użyciu biblioteki IronXL

Metoda AutoSizeRow dostosowuje wysokość wiersza, aby pomieścić jego zawartość. Warto zauważyć, że ta metoda oblicza wysokość tekstu na podstawie czcionki użytej w komórce. Jeśli dokładna czcionka nie jest dostępna w systemie, spróbuje ją zmierzyć za pomocą domyślnej czcionki. Jeśli nie zostanie znaleziona żadna czcionka domyślna, spróbuje wykorzystać dowolną dostępną czcionkę. Jednakże, jeśli nie zostaną znalezione żadne czcionki, zostanie wyrzucony wyjątek. Używa indeksu wiersza zaczynając od zera jako parametru. Musi być w granicach określonych przez 0 i (RowCount - 1). ArgumentException jest zgłaszany, jeśli podany rowIndex znajduje się poza zakresem. SixLabors.Fonts.FontException jest zgłaszany, gdy na komputerze nie są zainstalowane żadne czcionki.

Plik Excel do przetworzenia

W poniższym przykładzie możesz zobaczyć, że niektóre wiersze nie są dostosowane do odpowiedniego pomieszczenia danych. Teraz zobaczmy kod C# do automatycznego dostosowywania wysokości wierszy Excel.

Jak automatycznie dopasować komórki w Excelu używając C#: Rysunek 8 - Plik wejściowy Excel

using IronXL;
// Load example spreadsheet
WorkBook workBook = WorkBook.Load("FinancialSample.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;
var rowCount = workSheet.RowCount;

for (int i = 0; i < rowCount; i++)
{
    // Auto-fit row height for index i
    workSheet.AutoSizeRow(i);
}

// Save the autofitted workbook as a new file
workBook.SaveAs("autoResizeRows.xlsx"); // Result file

Wyjaśnienie kodu

  1. Początkowo ładujemy FinancialSample.xlsx za pomocą metody WorkBook.Load().
  2. Otrzymujemy całkowitą liczbę wierszy.
  3. Iterujemy przez wszystkie indeksy wierszy, aby automatycznie dostosować wysokości wierszy.
  4. Na koniec zapisujemy wyniki do nowego pliku o nazwie autoResizeRows.xlsx.

Plik wyjściowy w formacie Excel

Jak automatycznie dopasować komórki w Excelu używając C#: Rysunek 9 - Wyjściowy excel z automatycznie dopasowaną wysokością wiersza.

Krok 5: Ręczne ustawianie szerokości i wysokości kolumn oraz wierszy przy użyciu IronXL

Oprócz automatycznego dostosowywania wierszy i kolumn, IronXL oferuje również możliwość ręcznego dostosowywania szerokości i wysokości do konkretnej wartości wysokości wiersza i szerokości kolumny.

Plik Excel do przetworzenia

Jak automatycznie dopasować komórki w Excelu używając C#: Rysunek 10 - Plik wejściowy Excel

using IronXL;
// Load example spreadsheet
WorkBook workBook = WorkBook.Load("FinancialSample.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Manually set row height and column width
RangeRow row = workSheet.GetRow(0);
row.Height = 500; // Set height
RangeColumn col = workSheet.GetColumn(0);
col.Width = 5000; // Set width

// Save the workbook with specific values set
workBook.SaveAs("specificValue.xlsx");

Wyjaśnienie kodu

  1. Załaduj FinancialSample.xlsx za pomocą funkcji WorkBook.Load().
  2. Pobierz konkretne wiersze i kolumny, aby ręcznie dostosować ich wysokość i szerokość.
  3. Ustaw pożądane wartości wysokości i szerokości.
  4. Zapisz zmodyfikowany plik pod nazwą specificValue.xlsx.

Plik wyjściowy w formacie Excel

Jak automatycznie dopasować komórki w Excelu używając C#: Rysunek 11 - Wyjściowy excel z ręcznie dostosowaną szerokością i wysokością kolumn.

Licencjonowanie

Uzyskaj bezpłatny okres próbny, aby swobodnie korzystać z wszystkich funkcji IronXL przez 30 dni.

Uzyskaną licencję należy umieścić w pliku appSettings.json:

{
  "IronXL.License.LicenseKey": "myTrialKey"
}
JSON

Wnioski

Dzięki funkcjom takim jak AutoSizeColumn i AutoSizeRow z IronXL, programiści mogą bez trudu zapewnić, że arkusze Excela dostosowują się dynamicznie do zawartości, którą zawierają, niezależnie czy to importowane dane, dynamiczne raporty, treści generowane przez użytkownika, czy wyniki analizy danych.

Kompatybilność IronXL z różnymi frameworkami .NET, w tym .NET Core i Azure, zapewnia, że deweloperzy mogą wkomponować automatyzację Excela w szeroką gamę aplikacji bez zależności od Microsoft Office lub Excel Interop. Co więcej, wsparcie dla wielu języków i platform .NET czyni IronXL wszechstronnym wyborem dla deweloperów, którzy szukają uproszczenia zadań manipulacji Excel w różnorodnych środowiskach.

W istocie IronXL umożliwia developerom zwiększenie wydajności, dokładności i elastyczności w projektach automatyzacji Excela, oferując kompleksowy zestaw funkcji, aby sprostać wymaganiom nowoczesnego rozwoju w C#. Niezależnie od tego, czy chodzi o generowanie raportów, analizę danych, czy prezentowanie informacji, IronXL dostarcza narzędzi niezbędnych do osiągnięcia sukcesu w automatyzacji Excela w ekosystemie C#.

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ęczników.

...
Czytaj więcej

Powiązane artykuły

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Your trial license will be sent to your email address

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Zarezerwuj swoje darmowe Demo na żywo
Booking Badge

Zaufane przez miliony inżynierów na całym świecie

Logotypy klientów Iron Software
Otrzymaj swoje Konsultacja Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta