C#'ta Excel Dosyası Nasıl Oluşturulur

C# ile Excel'de Pane Dondurma Nasıl Eklenir

This article was translated from English: Does it need improvement?
Translated
View the article in English

'Z' ötesindeki 50+ satır veya sütuna sahip büyük Excel elektronik tablolarında, başlıkları görünür tutarken verileri görüntülemek zorlaşır. C# ortamındaki Pane Dondurma işlevselliği, belirli satırları ve sütunları yerine sabitleyerek geri kalanının serbestçe kaymasına izin vererek zarif bir çözüm sunar.

Bu özellik, finansal raporlarla, çalışan veritabanlarıyla veya ürün listeleriyle çalıştığınızda, sütun başlıklarının veya satır tanımlayıcılarının sürekli görünürlüğüne ihtiyaç duyduğunuzda esastır. IronXL'nin Excel kütüphanesi ile, verilerinizi .NET uygulamalarınızda daha iyi gezinti sağlamak ve kullanıcı deneyimini geliştirmek için pano dondurmalarını programatik olarak ekleyebilirsiniz.

Hızlı Başlangıç: Tek Satırda Başlık Satırlarını ve Sütunlarını Kilitle

Satırları veya sütunları saniyeler içinde sabitlemek için basit CreateFreezePane(colSplit, rowSplit) yöntemini kullanın. Karmaşık kurulum yok — yalnızca sayfanızı yükleyin, bu metodu çağırın ve kaydırırken başlıklarınız üstte sabit kalsın.

  1. IronXL aşağıdaki NuGet Paket Yöneticisi ile yükleyin

    PM > Install-Package IronXL.Excel
  2. Bu kod parçacığını kopyalayın ve çalıştırın.

    workSheet.CreateFreezePane(1, 4);
  3. Canlı ortamınızda test için dağıtım yapın

    Ücretsiz deneme ile bugün projenizde IronXL kullanmaya başlayın

    arrow pointer


Excel'e Pane Dondurma Nasıl Eklenir?

Pano dondurmaları, satır ve sütunları sabitleyerek kaydırırken görünür kalmalarını sağlar. Bu özellik, hızlı bilgi karşılaştırma yaparken başlık sütunlarını veya satırlarını yerinde tutar. Büyük veri setleriyle uğraştığınızda veya geniş hesap tablolarında gezinirken içeriği korumanız gerektiğinde bu işlevsellik çok değerlidir.

IronXL'deki pano dondurma özelliği, Excel'in yerel işlevselliğini taklit eder, Excel arayüzüne aşina geliştiriciler için sezgisel hale getirir. Excel Interop çözümlerinin aksine, IronXL programatik olarak pano dondurmaları uygulamak için daha verimli ve sunucu dostu bir yaklaşım sunar.

2 Parametre ile CreateFreezePane Nasıl Çalışır?

Bir bölmeyi sabitlemek için, CreateFreezePane yöntemini kullanarak bölmenin sabitlenmesinin başlayacağı sütunu ve satırı belirtin. Belirtilen sütun ve satır pano dondurmaya dahil edilmez. Örneğin, workSheet.CreateFreezePane(1, 4), column A ve rows 1 to 4'den başlayarak bir dondurma paneli oluşturur.

Sıfır tabanlı dizinlemenin anlaşılması çok önemlidir: sütun 0 A sütununu, sütun 1 B'yi ve bu şekilde devam eder. Satır dizinleme de aynı modeli izler. Bu yöntem, veri girişleri arasında kaydırırken başlıkları görünür tutmak istediğiniz senaryolar için mükemmeldir.

Aşağıdaki kod örneği, B sütunundan ve 4. satırdan başlayan bir pano dondurma nasıl oluşturulacağını gösteriyor:

:path=/static-assets/excel/content-code-examples/how-to/add-freeze-panes-add.cs
using IronXL;
using System.Linq;

WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.WorkSheets.First();

// Create freeze pane from column(A-B) and row(1-3)
workSheet.CreateFreezePane(2, 3);

workBook.SaveAs("createFreezePanes.xlsx");
Imports IronXL
Imports System.Linq

Private workBook As WorkBook = WorkBook.Load("sample.xlsx")
Private workSheet As WorkSheet = workBook.WorkSheets.First()

' Create freeze pane from column(A-B) and row(1-3)
workSheet.CreateFreezePane(2, 3)

workBook.SaveAs("createFreezePanes.xlsx")
$vbLabelText   $csharpLabel

Pano Dondurma Uygulamada Nasıl Görünür?

Freeze Pane in Action

Pane Dondurma Nasıl Kaldırılır?

Hesap tablosunuzdaki mevcut tüm dondurulmuş bölmeleri kaldırmak için RemovePane yöntemini kullanın. Görünümü sıfırlamanız veya kullanıcı tercihlerine veya veri değişikliklerine dayanarak farklı dondurma ayarlarını uygulamanız gerektiğinde bu kullanışlıdır.

:path=/static-assets/excel/content-code-examples/how-to/add-freeze-panes-remove.cs
// Remove all existing freeze or split pane
workSheet.RemovePane();
' Remove all existing freeze or split pane
workSheet.RemovePane()
$vbLabelText   $csharpLabel

Gelişmiş Pane Dondurma Seçenekleri Nelerdir?

CreateFreezePane yöntemi, önceden kaydırma işlevine sahip sabitlenmiş bölmeler oluşturmak için gelişmiş bir seçenek sunar. Bu özellik, çabuk dikkat çekmek istediğiniz bir elektronik tablonun belirli bir alanına odaklanırken dondurma paneli işlevselliğini sürdürmek istediğinizde kullanışlıdır.

Gelişmiş Dondurma Panoları için Ne Zaman 4 Parametre Kullanılmalı?

Bu yöntem, belirtilen başlangıç sütunu ve satırına göre bir pano dondurma eklemenizi sağlar. Ayrıca, çalışma sayfasına kaydırma uygulamanıza olanak tanır. Biçimlendirilmiş Excel raporlarıyla çalışırken başlangıç görünüm üzerinde hassas kontrol sağladığı için özellikle faydalıdır.

Örneğin, workSheet.CreateFreezePane(5, 2, 6, 7) kullanımı, columns A-E ve rows 1-2 arasında uzanan bir dondurma paneli oluşturur. 1 sütun ve 5 satır kaydırma içerir. Çalışma sayfası açıldığında, columns A-E, G-... ve rows 1-2, 8-... görüntülenir.

:path=/static-assets/excel/content-code-examples/how-to/add-freeze-panes-advance.cs
using IronXL;
using System.Linq;

WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.WorkSheets.First();

// Overwriting freeze or split pane to column(A-E) and row(1-5) as well as applying prescroll
// The column will show E,G,... and the row will show 5,8,...
workSheet.CreateFreezePane(5, 5, 6, 7);

workBook.SaveAs("createFreezePanes.xlsx");
Imports IronXL
Imports System.Linq

Private workBook As WorkBook = WorkBook.Load("sample.xlsx")
Private workSheet As WorkSheet = workBook.WorkSheets.First()

' Overwriting freeze or split pane to column(A-E) and row(1-5) as well as applying prescroll
' The column will show E,G,... and the row will show 5,8,...
workSheet.CreateFreezePane(5, 5, 6, 7)

workBook.SaveAs("createFreezePanes.xlsx")
$vbLabelText   $csharpLabel

Gelişmiş Dondurma Panosu Nasıl Görünür?

Excel pano dondurma demoları, donmuş başlıklarla ve Kimlik sütunu ile çalışan verileri gösteriyor, mavi ok donma sınırlarını belirtir

Pano Dondurma için Pratik Kullanım Senaryoları

Pano dondurmalar çeşitli iş senaryolarında çok değerli hale gelir:

  1. Finansal Raporlar: Yıllık verilerde gezinirken ay/çeyrek başlıkları görünürde tutun
  2. Çalışan Veritabanları: Performans metriklerini incelerken çalışan adlarını ve kimliklerini kilitleyin
  3. Envanter Yönetimi: Stok seviyelerini incelerken ürün kodlarını ve adlarını yerinde tutun
  4. Satış Panoları: Bölgesel satış verilerini analiz ederken ürün kategorilerini görünürde tutun

Excel formülleri ile birleştirildiğinde, dondurma panoları veri analiz verimliliğini önemli ölçüde artırır.

Tam Örnek: Pano Dondurmalarla Veri Raporu Oluşturma

İşte, pano dondurmalar ile biçimlendirilmiş bir rapor oluşturmayı gösteren kapsamlı bir örnek:

using IronXL;
using IronXl.Styles;

// Create a new workbook
WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.CreateWorkSheet("Sales Report");

// Add headers
workSheet["A1"].Value = "Product ID";
workSheet["B1"].Value = "Product Name";
workSheet["C1"].Value = "Q1 Sales";
workSheet["D1"].Value = "Q2 Sales";
workSheet["E1"].Value = "Q3 Sales";
workSheet["F1"].Value = "Q4 Sales";
workSheet["G1"].Value = "Total";

// Style headers
var headerRange = workSheet["A1:G1"];
headerRange.Style.Font.Bold = true;
headerRange.Style.BackgroundColor = "#4472C4";
headerRange.Style.Font.Color = "#FFFFFF";

// Add sample data
for (int i = 2; i <= 50; i++)
{
    workSheet[$"A{i}"].Value = $"P{i-1:D3}";
    workSheet[$"B{i}"].Value = $"Product {i-1}";
    workSheet[$"C{i}"].Value = Random.Shared.Next(1000, 5000);
    workSheet[$"D{i}"].Value = Random.Shared.Next(1000, 5000);
    workSheet[$"E{i}"].Value = Random.Shared.Next(1000, 5000);
    workSheet[$"F{i}"].Value = Random.Shared.Next(1000, 5000);
    workSheet[$"G{i}"].Formula = $"=SUM(C{i}:F{i})";
}

// Apply freeze pane to keep headers visible
workSheet.CreateFreezePane(0, 1);

// Auto-size columns for better visibility
workSheet.AutoSizeColumn(0, 6);

// Save the workbook
workBook.SaveAs("SalesReportWithFreezePanes.xlsx");
using IronXL;
using IronXl.Styles;

// Create a new workbook
WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.CreateWorkSheet("Sales Report");

// Add headers
workSheet["A1"].Value = "Product ID";
workSheet["B1"].Value = "Product Name";
workSheet["C1"].Value = "Q1 Sales";
workSheet["D1"].Value = "Q2 Sales";
workSheet["E1"].Value = "Q3 Sales";
workSheet["F1"].Value = "Q4 Sales";
workSheet["G1"].Value = "Total";

// Style headers
var headerRange = workSheet["A1:G1"];
headerRange.Style.Font.Bold = true;
headerRange.Style.BackgroundColor = "#4472C4";
headerRange.Style.Font.Color = "#FFFFFF";

// Add sample data
for (int i = 2; i <= 50; i++)
{
    workSheet[$"A{i}"].Value = $"P{i-1:D3}";
    workSheet[$"B{i}"].Value = $"Product {i-1}";
    workSheet[$"C{i}"].Value = Random.Shared.Next(1000, 5000);
    workSheet[$"D{i}"].Value = Random.Shared.Next(1000, 5000);
    workSheet[$"E{i}"].Value = Random.Shared.Next(1000, 5000);
    workSheet[$"F{i}"].Value = Random.Shared.Next(1000, 5000);
    workSheet[$"G{i}"].Formula = $"=SUM(C{i}:F{i})";
}

// Apply freeze pane to keep headers visible
workSheet.CreateFreezePane(0, 1);

// Auto-size columns for better visibility
workSheet.AutoSizeColumn(0, 6);

// Save the workbook
workBook.SaveAs("SalesReportWithFreezePanes.xlsx");
Imports IronXL
Imports IronXl.Styles

' Create a new workbook
Dim workBook As WorkBook = WorkBook.Create()
Dim workSheet As WorkSheet = workBook.CreateWorkSheet("Sales Report")

' Add headers
workSheet("A1").Value = "Product ID"
workSheet("B1").Value = "Product Name"
workSheet("C1").Value = "Q1 Sales"
workSheet("D1").Value = "Q2 Sales"
workSheet("E1").Value = "Q3 Sales"
workSheet("F1").Value = "Q4 Sales"
workSheet("G1").Value = "Total"

' Style headers
Dim headerRange = workSheet("A1:G1")
headerRange.Style.Font.Bold = True
headerRange.Style.BackgroundColor = "#4472C4"
headerRange.Style.Font.Color = "#FFFFFF"

' Add sample data
For i As Integer = 2 To 50
    workSheet($"A{i}").Value = $"P{i - 1:D3}"
    workSheet($"B{i}").Value = $"Product {i - 1}"
    workSheet($"C{i}").Value = Random.Shared.Next(1000, 5000)
    workSheet($"D{i}").Value = Random.Shared.Next(1000, 5000)
    workSheet($"E{i}").Value = Random.Shared.Next(1000, 5000)
    workSheet($"F{i}").Value = Random.Shared.Next(1000, 5000)
    workSheet($"G{i}").Formula = $"=SUM(C{i}:F{i})"
Next

' Apply freeze pane to keep headers visible
workSheet.CreateFreezePane(0, 1)

' Auto-size columns for better visibility
workSheet.AutoSizeColumn(0, 6)

' Save the workbook
workBook.SaveAs("SalesReportWithFreezePanes.xlsx")
$vbLabelText   $csharpLabel

Bu örnek, profesyonel raporlar oluşturmak için hücre stili ve formüller ile pano dondurmanın nasıl çalıştığını gösterir. Kullanıcılardan 50 satırlık satış verileri arasında kaydırırken başlık satırı görünür kalır.

Performans Dikkat Edilecek Hususlar

Büyük elektronik tablolara pano dondurma uygularken:

  • Maksimum performans için verileri doldurulduktan sonra pano dondurmalarını uygulayın Dondurulmuş bölümlerde önemli verileri vurgulamak için koşullu biçimlendirmeler kullanmayı düşünebilirsiniz Hedef veri hacminizle test edin, kaydırmanın sorunsuz devam ettiğinden emin olun

Farklı formatlara dışa çıkarma veya pano dondurmalarla birlikte sayfalamayı uygulamayı keşfedin.

Lütfen dikkate alınAynı anda yalnızca bir pano dondurma ayarı uygulanabilir. Herhangi bir ek pano dondurma oluşturma, önceki ayarın üzerine yazılır. Pano dondurma, Microsoft Excel sürümleri 97-2003 (.xls) ile çalışmaz.

Sıkça Sorulan Sorular

Panel dondurma özelliği nedir ve Excel elektronik tablolarında neden faydalıdır?

Panel dondurma özelliği, belirli satır ve sütunları yerinde kilitler ve büyük elektronik tablolar arasında kaydırırken bunların görünümde kalmasını sağlar. Bu, özellikle finansal raporlar, çalışan veri tabanları veya envanter listeleri gibi başlıkların görünürlüğünü sürdürebilmek için kullanışlıdır. IronXL, C# uygulamalarında bu işlevselliği programatik olarak uygulamak için basit bir CreateFreezePane metodu sağlar.

Başlık satırlarını kilitlemek için C#'ta hızlıca paneller nasıl eklenir?

IronXL ile, CreateFreezePane metodunu kullanarak sadece bir satır kodla başlık satırlarını kilitleyebilirsiniz. Sadece sütunları ve satırları dondurmak için workSheet.CreateFreezePane(1, 4) çağırın. Bu, A sütununu ve 1-4 satırlarını yerinde kilitler ve geri kalan elektronik tablonun serbestçe kaydırılmasına izin verir.

CreateFreezePane ile 2 parametre kullanmak ile 4 parametre kullanmak arasındaki fark nedir?

IronXL'nin CreateFreezePane metodu iki seçenek sunar: 2 parametre (colSplit, rowSplit) kullanarak belirtilen konumdan temel bir panel dondurma oluşturur, 4 parametre kullanarak önceden kaydırılmış konumlandırma ile daha gelişmiş görüntüleme alanı kontrolü sağlar.

Panel dondurulmuş ayarları belirlerken sıfır tabanlı indeksleme nasıl çalışır?

IronXL'nin CreateFreezePane metodunda, indeksleme sıfır tabanlıdır. Sütun 0, A sütununa, sütun 1, B sütununa vb. kadar gider. Benzer şekilde, satır indeksleme 0'dan başlar. Örneğin, CreateFreezePane(1, 4), A sütunundan başlayan ve 1'den 4'e kadar satırları içeren bir panel dondurma oluşturur.

Neden panel dondurmak için Excel Interop yerine bu kütüphaneyi kullanmalıyım?

IronXL, Excel Interop çözümlerine kıyasla daha verimli ve sunucu dostu bir yaklaşım sunar. Sunucuda Excel kurulumuna gerek duymadan çalışır, büyük veri setleri için daha iyi performans sağlar ve Excel'in yerel işlevselliğini taklit eden ancak .NET uygulamaları için optimize edilmiş sezgisel bir API sunar.

Panel dondurulmuş çalışma sayfalarını farklı dosya formatlarına dışa aktarabilir miyim?

Evet, IronXL'nin CreateFreezePane metodunu kullanarak panel dondurduktan sonra, elektronik tabloyu panel dondurma işlevselliği korunarak çeşitli dosya formatlarına dışa aktarabilirsiniz. Kütüphane, bu ayarları desteklenen Excel formatlarına kaydederken korur.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında Lisans Derecesine (Carleton Üniversitesi) sahip ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirmeyle ilgileniyor. Sezgisel ve estetik açıdan hoş kullanıcı arayüzleri oluşturma tutkunu, Curtis modern çerçevelerle çalışmayı ve iyi yapı...

Daha Fazla Oku
Başlamaya Hazır mısınız?
Nuget İndirmeler 2,052,917 | Sürüm: 2026.6 just released
Still Scrolling Icon

Hâlâ Kaydırıyor Musunuz?

Hızlıca kanıt ister misiniz? PM > Install-Package IronXL.Excel
örnek çalıştır verinizin bir hesap tablosu haline geldiğini izleyin.