Excel'de C# ile Donmuş Kenar Çubuğu Nasıl Eklenir
'Z' harfinden sonraki 50'den fazla satır veya sütuna sahip büyük Excel elektronik tablolarında, verileri görüntülemek ve başlıkları görünür tutmak zorlayıcı hale gelir. C#'ta Donmuş Kenar Çubuğu işlevselliği, belirli satır ve sütunları yerinde kilitleyerek geri kalanını serbestçe kaydırabilecek bir çözüm sunar.
Bu özellik, finansal raporlar, çalışan veritabanları veya sürekli sütun başlıkları veya satır tanımlayıcılarının görünürlüğünün gerektiği envanter listeleri ile çalışırken gerekli hale gelir. IronXL'in Excel kütüphanesi ile, verileri daha iyi gezinme ve kullanıcı deneyimi sağlamak için .NET uygulamalarınızda dondurulmuş kenar çubuklarını programlı olarak ekleyebilirsiniz.
Hızlı Başlangıç: Bir Satırda Başlık Satırlarını ve Sütunlarını Kilitle
Satırları veya sütunları saniyeler içinde dondurmak için basit CreateFreezePane(colSplit, rowSplit) metodunu kullanın. Karmaşık bir kurulum yok — sadece sayfanızı yükleyin, bu yöntemi çağırın ve kaydırırken başlıklarınız üstte kilitli kalır.
-
NuGet Paket Yöneticisi ile https://www.nuget.org/packages/IronXl.Excel yükleyin
PM > Install-Package IronXl.Excel -
Bu kod parçasını kopyalayıp çalıştırın.
workSheet.CreateFreezePane(1, 4); -
Canlı ortamınızda test etmek için dağıtın
Bugün projenizde IronXL kullanmaya başlayın ücretsiz deneme ile
Minimum İş Akışı (4 adım)
Çalışma sayfanıza donmuş kenar çubuğu eklemek için bu adımları izleyin:
- Donmuş kenar çubuğu için gereken C# kütüphanesini yükleyin
- 2 parametre ile
CreateFreezePanekullanarak donmuş kenar çubuğu ekleyin - Önceden kaydırılmış konumlandırma ile donmuş kenar çubuğu eklemek için 4 parametre ile
CreateFreezePanekullanın - Elektronik tabloyu istediğiniz dosya formatlarına dışa aktarın
Excel'de Donmuş Kenar Çubuğu Nasıl Eklenir?
Donmuş kenar çubukları, satır ve sütunları yerinde kilitleyerek kaydırırken görünmelerini sağlar. Bu özellik, bilgi karşılaştırmasını hızlandırarak başlık sütunlarını veya satırlarını yerinde tutar. Bu işlevsellik, büyük veri kümeleri ile çalışırken veya geniş elektronik tablolar arasında gezinirken bağlamın korunması gerektiğinde özellikle değerlidir.
IronXL'deki donmuş kenar çubuğu özelliği, Excel'in yerel işlevselliğini taklit ederek Excel'in ara yüzüne aşina olan geliştiriciler için sezgisel hale getirir. Excel Interop çözümlerinin aksine, IronXL, pencere bölmelerini programlamayla sabitlemek için daha verimli ve sunucu dostu bir yaklaşım sunar.
2 Parametre ile CreateFreezePane Nasıl Çalışır?
Bir donma bölmesi eklemek için, donma bölmesinin başlaması gerektiği sütun ve satırı belirterek CreateFreezePane metodunu kullanın. Belirtilen sütun ve satır, pencere bölmesine dahil edilmez. Örneğin, workSheet.CreateFreezePane(1, 4) A sütunu ve 1'den 4'e kadar satırlar başlayacak şekilde bir donma bölmesi oluşturur.
Sıfır tabanlı indekslemenin anlaşılması çok önemlidir: sütun 0, A sütununa; sütun 1, B sütununa karşılık gelir. Satır indekslemesi de aynı şekilde işler. Bu yöntem, başlıkları veri girişlerinde gezinirken 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 pencere bölmesinin nasıl oluşturulduğunu göstermektedir:
: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")
Pencere Bölmesi Faaliyette Nasıl Görünür?
Pencere Bölmesini Nasıl Kaldırırım?
Elektronik tablonuzdaki mevcut tüm donma bölmelerini kaldırmak için RemovePane metodunu kullanın. Bu, görünümü sıfırlamanız veya kullanıcı tercihleri veya veri değişikliklerine göre farklı sabitleme ayarları uygulamanız gerektiğinde faydalı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()
Gelişmiş Pencere Bölmesi Seçenekleri Nelerdir?
CreateFreezePane metodu, ön kaydırma işlevselliği ile donma bölmeleri oluşturmak için gelişmiş bir seçenek sunar. Bu özellik, pencere bölmesi işlevselliğini korurken elektronik tablonun belirli bir alanına odaklanmak istediğinizde kullanışlıdır.
Gelişmiş Pencere Bölmeleri için Ne Zaman 4 Parametre Kullanmalıyım?
Bu yöntem, belirtilen başlangıç sütunu ve sırasına dayalı olarak bir pencere bölmesi eklemenize olanak tanır. Ayrıca, çalışma sayfasına kaydırma uygulamanızı sağlar. Bu, biçimlendirilmiş Excel raporları üzerinde çalışırken, ilk görünüm üzerinde hassas kontrol gerektiğinde özellikle faydalıdır.
Örneğin, workSheet.CreateFreezePane(5, 2, 6, 7) kullanarak, A-E sütunları ve 1-2 satırları kapsayan bir donma bölmesi oluşturur. 1 sütun ve 5 satır kaydırma içerir. Çalışma sayfası açıldığında, A-E, G-... sütunlarını ve 1-2, 8-... satırlarını gösterir.
: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")
Gelişmiş Pencere Bölmesi Nasıl Görünür?
Pencere Bölmelerinin Pratik Kullanım Alanları
Pencere bölmeleri çeşitli iş senaryolarında değerlidir:
- Finansal Raporlar: Aylık/çeyreklik başlıklar görünür kalırken yıllık verilere göz atın
- Çalışan Veritabanları: Performans metriklerini incelerken çalışan isimlerini ve ID'lerini kilitleyin
- Envanter Yönetimi: Stok seviyelerini incelerken ürün kodlarını ve isimlerini sabitleyin
- Satış Panoları: Bölgesel satış verilerini analiz ederken ürün kategorilerinin görünürlüğünü koruyun
Excel formülleri ile birleştirildiğinde, pencere bölmeleri veri analizi verimliliğini önemli ölçüde artırır.
Tam Örnek: Pencere Bölmeleri ile Bir Veri Raporu Oluşturma
İşte, pencere bölmeleri ile biçimlendirilmiş bir raporun nasıl oluşturulduğunu 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")
Bu örnek, hücre stili ve formüller ile pencere bölmelerinin nasıl profesyonel raporlar oluşturduğunu gösterir. Kullanıcılar, 50 satırlık satış verilerinde gezinirken başlık satırı görünür kalır.
Performans Dikkat Edilecek Noktalar
Büyük elektronik tablolarda pencere bölmeleri uygularken:
- Optimal performans için veriler doldurulduktan sonra pencere bölmeleri uygulayın
- Dondurulmuş bölümlerde önemli verileri vurgulamak için koşullu biçimlendirme kullanmayı düşünün
- Hedef veri hacminizle test ederek düzgün kaydırma performansını sağlayın
Geniş veri kümelerini işleyen uygulamalar için, farklı formatlara dönüştürmeyi veya pencere bölmeleri ile birlikte sayfa numaralandırma stratejilerini uygulamayı keşfedin.
Sıkça Sorulan Sorular
Donmuş pano özelliği nedir ve Excel hesap tablolarında neden faydalıdır?
Donmuş pano özelliği belirli satır ve sütunları yerinde kilitler ve büyük hesap tablolarında gezinirken görünür kalmasını sağlar. Bu, finansal raporlar, çalışan veritabanları veya envanter listelerinde başlık görünürlüğünü korumak için özellikle faydalıdır. IronXL, bu işlevselliği C# uygulamalarında programlı olarak uygulamak için basit bir CreateFreezePane yöntemi sağlar.
C# ile başlık satırlarını hızla nasıl donmuş panolar eklerim?
IronXL ile, CreateFreezePane yöntemini kullanarak yalnızca bir satır kodla başlık satırlarını kilitleyebilirsiniz. Sadece workSheet.CreateFreezePane(1, 4) çağırarak sütunları ve satırları dondurun. Bu, sütun A'yı ve satırları 1-4 yerinde kilitlerken hesap tablosunun geri kalanının serbestçe kaymasını sağlar.
CreateFreezePane ile 2 parametre kullanmak ile 4 parametre kullanmak arasındaki fark nedir?
IronXL'nin CreateFreezePane yöntemi iki seçenek sunar: 2 parametre (colSplit, rowSplit) kullanarak belirtilen konumdan temel bir donmuş pano yaratır, 4 parametre kullanmak ise daha gelişmiş bir kontrol için önceden kaydırılmış konumla donmuş pano eklemenizi sağlar.
Donmuş panolar ayarlanırken sıfırdan başlayan indeksleme nasıl çalışır?
IronXL'nin CreateFreezePane yönteminde indeksleme sıfırdan başlar. Sütun 0 sütun A'ya, sütun 1 sütun B'ye vb. atıfta bulunur. Benzer şekilde, satır indeksleme 0'dan başlar. Örneğin, CreateFreezePane(1, 4) sütun A'dan başlayan ve satırları 1'den 4'e kadar olan bir donmuş pano oluşturur.
Donmuş panolar için Excel Interop yerine bu kütüphaneyi neden kullanmalıyım?
IronXL, Excel Interop çözümlerine kıyasla daha verimli ve sunucu dostu bir yaklaşım sunar. Sunucuda Excel kurulumu gerektirmez, büyük veri setleri için daha iyi performans sağlar ve Excel'in yerel işlevselliğini taklit eden, .NET uygulamaları için optimize edilmiş sezgisel bir API sunar.
Donmuş panolarla hesap tablolarını farklı dosya formatlarına dışa aktarabilir miyim?
Evet, IronXL'nin CreateFreezePane yöntemi ile donmuş panolar ekledikten sonra, hesap tablonuzu farklı dosya formatlarına dışa aktarırken donmuş pano işlevselliğini koruyabilirsiniz. Kütüphane, desteklenen Excel formatlarına kaydederken bu ayarları korur.

