C#'ta Excel Dosyası Açma ve Veri Yazma
Bu makale, bir Microsoft Excel dosyasının nasıl açılacağını ve bir C# Konsol Uygulaması'nda işleneceğini göstermek için IronXL kütüphanesini keşfedecek.
IronXL - Bir Excel Kütüphanesi
IronXL, C# uygulamalarında Excel dosyalarının oluşturulmasını, okunmasını ve düzenlenmesini kolaylaştıran bir .NET Excel Kutuphanesidir. Üstün performans ve doğru çıktı sunar. Kütüphane, tüm Excel çalışma kitabı dosya formatlarını, XLS, XLSX, XLSM, CSV ve TSV dahil olmak üzere destekler. Ayrıca, verileri JSON, HTML, İkili, Bayt Dizisi, DataSet veya DataTable gibi formatlarda kaydetmeye veya dışa aktarmaya da olanak tanır.
IronXL ile geliştiriciler çalışma sayfaları ve hücre bölgeleri ile kesintisiz çalışabilirler. Formülleri düzenleme ve sayfada kolayca yeniden hesaplama yapabilme yeteneği sunar. Veri sıralama aralığa, sütuna veya satıra dayanarak basittir. Kütüphane, panoları dondurma, satır/sütunların otomatik boyutlandırılması ve satır/sütun ekleme/kaldırma gibi düzenleri değiştirmek için özellikler sunar.
IronXL ayrıca Excel dosyalarını koruma ve kullanıcı şifreleri ve düzenleme izinleri sağlama yeteneğine sahiptir. Başka bir önemli özellik ise Excel çalışma sayfalarına resim ekleme, çıkarma ve kaldırma yeteneğidir. Kütüphane, çeşitli hücre veri formatlarını destekleyen geniş bir Excel işlevselliği sunar. Bu özellikler, IronXL'yi Excel dosyalarıyla çalışırken en kullanıcı dostu API'lerden biri yapmaktadır.
IronXL'nin önemli avantajlarından biri, Office Interop veya başka herhangi bir bağımlılığa ihtiyaç duymaksızın, makinede Microsoft Excel yüklü olmasını gerektirmemesidir. Çoklu platformlarla uyumludur ve .NET 7, 6 ve 5 desteği bulunmaktadır. Ayrıca, .NET Core 2 ve 3 ile uyumlu olduğu gibi, Excel elektronik tablolarıyla çalışmak için .NET Framework 4.5 ve sonraki sürümleriyle de uyumludur.
Bir Konsol Uygulaması Oluşturun
En son sürüm Visual Studio IDE, uygulamayı oluşturmak için önerilir. Visual Studio, C# geliştirme için resmi IDE'dir ve zaten yüklediğiniz varsayılmaktadır. Eğer Visual Studio'yu yüklemediyseniz, bunu resmi Microsoft Visual Studio web sitesinden indirebilirsiniz.
"DemoApp" adında yeni bir proje oluşturmak için şu adımları izleyin.
-
Visual Studio'yu açın ve Yeni Proje Oluştur'a tıklayın
Yeni Proje -
Konsol Uygulamasını Seçin ve İleri'ye Tıklayın
Yeni Proje Türü -
Projenin adını girin
Yeni Proje Adı -
.NET sürümünü seçin. Kararlı sürüm .NET 6.0'ı seçin.
Yeni Proje Ek Bilgi
IronXL Kütüphanesini Kur
Proje oluşturulduğunda, IronXL kutuphanesi projeye kurulmalıdır. Bunu kurmak için aşağıdaki adımları izleyin.
-
Çözüm için NuGet Paketlerini Yönet'i, ya Çözüm Gezgini'nden ya da Araçlar'dan açın.
NuGet Paket Yöneticisi -
IronXL Kütüphanesi'ni arayın ve mevcut projeyi seçin. Yükle'ye tıklayın.
IronXL paketini NuGet Paket Yöneticisi UI'de arayın ve yükleyin
Program.cs dosyasının üstüne aşağıdaki namespace'i ekleyin
using IronXL;
using IronXL;
Imports IronXL
Open an Existing Excel File in C
IronXL mevcut bir Excel dosyasını açma kolaylığı sağlar veya yeni bir Excel dosyası oluşturabilirsiniz. Bu örnek, C# IronXL kullanarak mevcut bir dosyayı açacaktır.
// Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
' Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
Dim workBook As WorkBook = WorkBook.Load("sample.xlsx")
Şimdi, ilk sayfasını seçelim. Bir çalışma sayfasını dizin numarası veya adı ile seçebilirsiniz. DefaultWorkSheet özelliği, ilk sayfayı elde etmeye yardımcı olabilir.
// Select worksheet at index 0
WorkSheet workSheet = workBook.WorkSheets[0];
// Select worksheet by name
WorkSheet ws = workBook.GetWorkSheet("Sheet1");
// Get any existing worksheet
WorkSheet firstSheet = workBook.DefaultWorkSheet;
// Select worksheet at index 0
WorkSheet workSheet = workBook.WorkSheets[0];
// Select worksheet by name
WorkSheet ws = workBook.GetWorkSheet("Sheet1");
// Get any existing worksheet
WorkSheet firstSheet = workBook.DefaultWorkSheet;
' Select worksheet at index 0
Dim workSheet As WorkSheet = workBook.WorkSheets(0)
' Select worksheet by name
Dim ws As WorkSheet = workBook.GetWorkSheet("Sheet1")
' Get any existing worksheet
Dim firstSheet As WorkSheet = workBook.DefaultWorkSheet
Yukarıdaki kod, Excel çalışma kitabının ilk sayfasını elde ediyor. Veri içeren yeni bir Excel dosyası oluşturmak için bu kod örneği sayfasını kontrol edin.
Şimdi, IronXL nesne kütüphanesini kullanarak Excel dosyasına veri yazalım.
Write Data to Excel File in C
IronXL kullanarak bir Excel dosyasına veri yazmak oldukça kolaydır. Bunu başarmanın birden fazla yolu var ancak en basit yöntem Excel hücre referansını kullanmaktır.
// Access A1 cell and write the value
workSheet["A1"].Value = "Value using cell reference";
// Access A1 cell and write the value
workSheet["A1"].Value = "Value using cell reference";
' Access A1 cell and write the value
workSheet("A1").Value = "Value using cell reference"
Hücrelerin bulunduğu bir aralığa da veri yazmak mümkündür. Aşağıdaki kod, B1'den B5'e kadar olan hücrelere veri yazar.
// Write the same value to cells from B1 to B5
workSheet["B1:B5"].Value = "Range value";
// Write the same value to cells from B1 to B5
workSheet["B1:B5"].Value = "Range value";
' Write the same value to cells from B1 to B5
workSheet("B1:B5").Value = "Range value"
Ayrıca, bir for döngüsü ile aralığı doldurup dinamik hale getirebiliriz. Kod şu şekildedir:
// Specify range in which we want to write the values
for (int i = 1; i <= 5; i++)
{
// Write the Dynamic value in column C
workSheet["C" + i].Value = "Value: " + i;
// Write the Dynamic value in column D
workSheet["D" + i].Value = "Value: " + i;
}
// Specify range in which we want to write the values
for (int i = 1; i <= 5; i++)
{
// Write the Dynamic value in column C
workSheet["C" + i].Value = "Value: " + i;
// Write the Dynamic value in column D
workSheet["D" + i].Value = "Value: " + i;
}
' Specify range in which we want to write the values
For i As Integer = 1 To 5
' Write the Dynamic value in column C
workSheet("C" & i).Value = "Value: " & i
' Write the Dynamic value in column D
workSheet("D" & i).Value = "Value: " & i
Next i
Bir Excel dosyasına veri yazmanın bir başka yolu Replace yöntemini kullanmaktır.
// Replace the value in cell D5
workSheet["D5"].Replace("Value: 5", "Replaced Value");
// Replace the value in cell D5
workSheet["D5"].Replace("Value: 5", "Replaced Value");
' Replace the value in cell D5
workSheet("D5").Replace("Value: 5", "Replaced Value")
Save an Excel File in C
Bu bölüm, Excel dosyasını yeni yazılmış içerik ile nasıl kaydedileceğini açıklar.
// Save the updated Excel workbook to a file
workBook.SaveAs("sample.xlsx");
// Save the updated Excel workbook to a file
workBook.SaveAs("sample.xlsx");
' Save the updated Excel workbook to a file
workBook.SaveAs("sample.xlsx")
Tam kod şu şekildedir:
using System;
using IronXL;
class Program
{
static void Main(string[] args)
{
// Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Select worksheet at index 0
WorkSheet workSheet = workBook.WorkSheets[0];
// Access A1 cell and write the value
workSheet["A1"].Value = "Value using cell reference";
// Write the same value to cells from B1 to B5
workSheet["B1:B5"].Value = "Range value";
// Specify range in which we want to write the values
for (int i = 1; i <= 5; i++)
{
// Write the Dynamic value in column C
workSheet["C" + i].Value = "Value: " + i;
// Write the Dynamic value in column D
workSheet["D" + i].Value = "Value: " + i;
}
// Replace the value in cell D5
workSheet["D5"].Replace("Value: 5", "Replaced Value");
// Save the updated Excel workbook to a file
workBook.SaveAs("sample.xlsx");
Console.WriteLine("Successfully written to Excel File");
}
}
using System;
using IronXL;
class Program
{
static void Main(string[] args)
{
// Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
WorkBook workBook = WorkBook.Load("sample.xlsx");
// Select worksheet at index 0
WorkSheet workSheet = workBook.WorkSheets[0];
// Access A1 cell and write the value
workSheet["A1"].Value = "Value using cell reference";
// Write the same value to cells from B1 to B5
workSheet["B1:B5"].Value = "Range value";
// Specify range in which we want to write the values
for (int i = 1; i <= 5; i++)
{
// Write the Dynamic value in column C
workSheet["C" + i].Value = "Value: " + i;
// Write the Dynamic value in column D
workSheet["D" + i].Value = "Value: " + i;
}
// Replace the value in cell D5
workSheet["D5"].Replace("Value: 5", "Replaced Value");
// Save the updated Excel workbook to a file
workBook.SaveAs("sample.xlsx");
Console.WriteLine("Successfully written to Excel File");
}
}
Imports System
Imports IronXL
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Supported spreadsheet formats for reading XLSX, XLS, XLSM, XLTX, CSV and TSV
Dim workBook As WorkBook = WorkBook.Load("sample.xlsx")
' Select worksheet at index 0
Dim workSheet As WorkSheet = workBook.WorkSheets(0)
' Access A1 cell and write the value
workSheet("A1").Value = "Value using cell reference"
' Write the same value to cells from B1 to B5
workSheet("B1:B5").Value = "Range value"
' Specify range in which we want to write the values
For i As Integer = 1 To 5
' Write the Dynamic value in column C
workSheet("C" & i).Value = "Value: " & i
' Write the Dynamic value in column D
workSheet("D" & i).Value = "Value: " & i
Next i
' Replace the value in cell D5
workSheet("D5").Replace("Value: 5", "Replaced Value")
' Save the updated Excel workbook to a file
workBook.SaveAs("sample.xlsx")
Console.WriteLine("Successfully written to Excel File")
End Sub
End Class
C#'ta Excel dosya verilerini okuma hakkında daha ayrıntılı bilgi için bu örneğe göz atın.
Çıktı
Dosyanin cikisi:
Çıktı Excel dosyası
Özet
Bu makalede, IronXL kullanarak C# dilinde Excel dosyalarina veri yazmanin yollari gösterilmistir. IronXL mevcut Excel dosyalarıyla zahmetsizce çalışmayı sağlar. Ayrica yeni Excel dosyalari oluşturmaniza ve kolay syntax ile veri yazmaniza da olanak tanir. IronXL, Microsoft Excel uygulamasi yuklu olmadan da Excel dosyalarini okumak icin kullanilabilir. Excel dosyalarindan veri okumak icin, bu kod ornegi sayfasina bakin.
IronXL, geliştirme için ücretsizdir ve ticari kullanım için lisanslanabilir. Ticari kullanım için IronXL ücretsiz denemesini de deneyebilirsiniz.
Sıkça Sorulan Sorular
C#'da bir Excel dosyasını Interop kullanmadan nasıl açabilirim?
IronXL kütüphanesini kullanarak C#'da bir Excel dosyasını Interop kullanmadan açabilirsiniz. IronXL, Microsoft Excel yüklemeye ihtiyaç duymadan Excel dosyalarını verimli bir şekilde yönetmenizi sağlar, böylece performansı artırır ve uyumluluğu geliştirir.
C# kullanarak Excel dosyasında belirli bir hücreye veri nasıl yazabilirim?
IronXL kullanarak bir Excel dosyasındaki belirli bir hücreye veri yazmak için çalışma kitabına erişebilir, çalışma sayfasını seçebilir ve ardından hücre referanslarını kullanarak istenen hücrelere değer atayabilirsiniz.
Excel dosya işlemleri için IronXL'in Office Interop'a göre avantajları nelerdir?
IronXL, Office Interop'a göre birçok avantaj sunar; bunlar arasında Microsoft Excel yükleme zorunluluğunun ortadan kalkması, gelişmiş performans, platformlar arası uyumluluk ve XLS, XLSX, CSV gibi çeşitli Excel dosya formatlarına destek bulunur.
Bu kütüphane ile Excel dosyalarında formülleri düzenleyebilir miyim?
Evet, IronXL Excel dosyalarında formülleri düzenlemenize olanak tanır. Var olan formülleri değiştirebilir veya basit bir sözdizimi kullanarak yeni formüller ekleyebilirsiniz; bu kütüphane bunları verimli bir şekilde işler.
IronXL farklı Excel dosya formatlarını nasıl destekler?
IronXL, C# uygulamasında sömürme, okuma ve düzenleme işlemlerini sorunsuz gerçekleştirebilmenizi sağlayarak XLS, XLSX, XLSM, CSV ve TSV gibi birden fazla Excel dosya formatını destekler.
IronXL ile Excel dosyasını korumak mümkün mü?
Evet, IronXL kullanıcı parolaları ve izinleri ayarlayarak Excel dosyalarını koruma işlevselliği sunar, böylece veri güvenliğini ve denetimli erişimi sağlar.
C# projemde IronXL kütüphanesini nasıl entegre edebilirim?
C# projenize IronXL'i entegre etmek için Visual Studio'da NuGet Paket Yöneticisini kullanabilirsiniz. IronXL'i arayın ve özelliklerini kullanmaya başlamak için projenize ekleyin.
Hangi platformlar IronXL tarafından desteklenir?
IronXL çeşitli geliştirici ortamları için çok yönlü bir seçim yaparak .NET 5, 6, ve 7 dahil olmak üzere .NET Core ve Framework gibi birçok platformu destekler.
IronXL'i ücretsiz kullanabilir miyim?
IronXL geliştirme amaçlı ücretsizdir. Ancak, ticari kullanım için bir lisans gerekmektedir. Ticari ortamda kütüphanenin özelliklerini test etmek için ücretsiz bir deneme sunulmaktadır.
IronXL kullanarak Excel verilerini JSON formatına nasıl aktarabilirim?
IronXL, Excel verilerini JSON stringlerine dönüştürerek çalışma sayfasını veya belirli veri aralıklarını JSON formatına dışa aktarmanıza olanak tanır; bu da JSON verisi gerektiren uygulamalarda kullanılabilir.




