Altbilgi içeriğine atla
IRONXL KULLANARAK

C#'ta Excel Sayfasından Verileri Nasıl Çekilir

IronXL, C#'da Excel dosyalarıyla çalışmak için çeşitli fonksiyonlar sağlayan özellikler açısından zengin bir API'dir. Bu eğitimde, C# kullanarak IronXL ile Excel sayfalarından nasıl veri çekileceğini inceleyeceğiz.

Bu eğitimi takip etmek için aşağıdaki gereksinimlere ihtiyacınız vardır:

  • Makinenizde kurulu bir Microsoft Visual Studio
  • C# programlaması hakkında temel bilgi
  • Projenize yüklü IronXL kütüphanesi

IronXL'yi resmi web sitesinden veya Visual Studio'daki NuGet Paket Yöneticisi aracılığıyla indirebilirsiniz.

Visual Studio'da IronXL Kurulumu

C# projesinde IronXL kurmak için lütfen şu adımları izleyin:

  1. Microsoft Visual Studio'yu açın.
  2. Yeni bir proje oluşturun veya mevcut bir projeyi açın.
  3. Solution Explorer'da projeye sağ tıklayın ve "NuGet Paketlerini Yönet" seçeneğini seçin.
  4. "NuGet Paket Yöneticisi" penceresinde, "Gözat" sekmesini seçin.
  5. Arama kutusuna "IronXL" yazın ve Enter'a basın.
  6. "IronXL.Excel" seçeneğini seçin ve "Yükle" düğmesine tıklayın.
  7. Lisans sözleşmesini kabul etmek için "Kabul Ediyorum" düğmesine tıklayın.
  8. Kurulumun tamamlanmasını bekleyin.

C# ile Excel Sayfasından Veri Nasıl Alınır, Şekil 1: Visual Studio Projesine IronXL Kütüphanesini Yükleme Visual Studio Projesinde IronXL Kütüphanesinin Kurulumu

Bu adımlar atıldığında, IronXL projenizde kurulmuş ve kullanıma hazır olmalıdır.

Adım 1: Gerekli Kütüphaneleri İçe Aktarın

IronXL kütüphanesini ve diğer gerekli kütüphaneleri içe aktarmak için şu örnek kodu ekleyin.

using IronXL;
using System;
using System.Data;
using System.Data.OleDb;
using System.Windows.Forms;
using IronXL;
using System;
using System.Data;
using System.Data.OleDb;
using System.Windows.Forms;
Imports IronXL
Imports System
Imports System.Data
Imports System.Data.OleDb
Imports System.Windows.Forms
$vbLabelText   $csharpLabel

IronXL kullanarak ad alanını kullanmak, IronXL kütüphanesi ile Excel dosyaları ile çalışmak için gerekli tüm sınıf ve fonksiyonları sağlar.

Adım 2: Excel Dosyasını Yükleyin

İlk adım dosyayı yüklemektir. IronXL bir Excel dosyasını yüklemek için WorkBook sınıfı sağlar. Varolan bir Excel dosyasını açmak veya yeni bir çalışma kitabı oluşturmak için WorkBook sınıfını kullanabiliriz.

Mevcut bir Excel dosyasını yüklemek için aşağıdaki kodu kullanın:

WorkBook workbook = WorkBook.Load("path/to/excel/file.xlsx");
WorkBook workbook = WorkBook.Load("path/to/excel/file.xlsx");
Dim workbook As WorkBook = WorkBook.Load("path/to/excel/file.xlsx")
$vbLabelText   $csharpLabel

Bu kod, belirtilen Excel dosyasını bir WorkBook nesnesine yükler.

Yeni bir WorkBook oluşturmak için aşağıdaki örnek kodu kullanın:

WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
Dim workbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
$vbLabelText   $csharpLabel

Bu kod belirtilen dosya formatında (burada, XLSX) yeni bir iş kitabı oluşturur.

C# ile Excel Sayfasından Veri Nasıl Alınır, Şekil 3: IronXL, .XLS ve .XLSX dosya formatlarında Excel Elektronik Tablolarını yükleyebilir ve oluşturabilir IronXL, .XLS ve .XLSX dosya formatlarında Excel Elektronik Tabloları yükleyebilir ve oluşturabilir

Adım 3: Excel Sayfasını Getir

Excel dosyası yüklendikten sonra, hangi Excel sayfasından veri çekileceğini belirtmek gerekir. Bir WorkBook birden fazla WorkSheet nesnesi içerebilir. Her bir WorkSheet veri erişiminden önce çalışma sayfasının adını belirtmelidir.

WorkSheet worksheet = workbook.WorkSheets["Sheet1"];
WorkSheet worksheet = workbook.WorkSheets["Sheet1"];
Dim worksheet As WorkSheet = workbook.WorkSheets("Sheet1")
$vbLabelText   $csharpLabel

Bu kod, iş kitabındaki ilk çalışma sayfasını (çalışma sayfası adı Sheet1 olan) getirir. Bir çalışma sayfasını indeks ile getirmek istiyorsanız, aşağıdaki kodu kullanabilirsiniz:

WorkSheet worksheet = workbook.WorkSheets[0];
WorkSheet worksheet = workbook.WorkSheets[0];
Dim worksheet As WorkSheet = workbook.WorkSheets(0)
$vbLabelText   $csharpLabel

Bu kod, işletmenin bir tane olduğunu varsayarak iş kitabındaki ilk çalışma sayfasını getirir.

Adım 4: Excel Sayfasından Veri Getir

Getirilen Excel sayfasından veri erişilebilir hale gelir. IronXL, Excel sayfasından veri almak için çeşitli yöntemler sunar. İşte en sık kullanılan yöntemlerden bazıları:

  • İndeksleme operatörü []: Tek bir hücrenin değerini alır.
  • GetRow: Tek bir veri satırını alır.
  • GetColumn: Tek bir veri sütununu alır.
  • GetRange: Retrieves a range of cells.

Tek bir hücrenin değerini almak için aşağıdaki kodu kullanın:

object value = worksheet["A1"].Value;
object value = worksheet["A1"].Value;
Dim value As Object = worksheet("A1").Value
$vbLabelText   $csharpLabel

Bu kod, çalış ma sayfasındaki A1 hücresinin değerini alır.

Tek bir veri satırını almak için aşağıdaki kodu kullanın:

var dataRow = worksheet.GetRow(1);
var dataRow = worksheet.GetRow(1);
Dim dataRow = worksheet.GetRow(1)
$vbLabelText   $csharpLabel

Bu kod, çalışma sayfasındaki ilk veri satırını alır.

Tek bir veri sütununu almak için aşağıdaki kodu kullanın:

var dataColumn = worksheet.GetColumn(1);
var dataColumn = worksheet.GetColumn(1);
Dim dataColumn = worksheet.GetColumn(1)
$vbLabelText   $csharpLabel

Bu kod, çalışma sayfasındaki ilk veri sütununu alır.

Bir hücre aralığı almak için aşağıdaki kodu kullanın:

var cellRange = worksheet.GetRange("A1:B2");
var cellRange = worksheet.GetRange("A1:B2");
Dim cellRange = worksheet.GetRange("A1:B2")
$vbLabelText   $csharpLabel

Bu kod, çalışma sayfasındaki A1'den B2'ye kadar olan hücre aralığını alır.

Adım 5: Excel Sayfasından Veriyi Çıkar

Çıkarılan tek bir değeri uygun veri türüne dökmek gerekir.

Aşağıdaki kod, A1 hücresinden bir tamsayı değerin nasıl çıkarılabileceğini gösterir:

int value = worksheet["A1"].IntValue;
int value = worksheet["A1"].IntValue;
Dim value As Integer = worksheet("A1").IntValue
$vbLabelText   $csharpLabel

Aşağıdaki kod, bir veri satırını çıkarmak için kullanılabilir:

var dataRow = worksheet.GetRow(1);
var values = dataRow.Values;

foreach (var value in values)
{
    int intValue = (int)value;
    // Do something with the extracted value
}
var dataRow = worksheet.GetRow(1);
var values = dataRow.Values;

foreach (var value in values)
{
    int intValue = (int)value;
    // Do something with the extracted value
}
Dim dataRow = worksheet.GetRow(1)
Dim values = dataRow.Values

For Each value In values
	Dim intValue As Integer = CInt(value)
	' Do something with the extracted value
Next value
$vbLabelText   $csharpLabel

Bu kod, ilk veri satırını çıkarır ve satırdaki değerler arasında dolaşarak her birini tamsayıya döker.

Sonraki olarak, bir veri sütununun nasıl çıkarılacağını gösteren aşağıdaki koda bakın:

var dataColumn = worksheet.GetColumn(1);
var values = dataColumn.Values;

foreach (var value in values)
{
    string strValue = (string)value;
    // Do something with the extracted value
}
var dataColumn = worksheet.GetColumn(1);
var values = dataColumn.Values;

foreach (var value in values)
{
    string strValue = (string)value;
    // Do something with the extracted value
}
Dim dataColumn = worksheet.GetColumn(1)
Dim values = dataColumn.Values

For Each value In values
	Dim strValue As String = CStr(value)
	' Do something with the extracted value
Next value
$vbLabelText   $csharpLabel

Bu kod, ilk veri sütununu çıkarır ve sütundaki değerler arasında dolaşarak her birini diziye döker.

Sonraki örnek, bir hücre aralığının nasıl çıkarılacağını gösterir:

var cellRange = worksheet.GetRange("A1:B2");
var values = cellRange.Values;

foreach (var row in values)
{
    foreach (var value in row)
    {
        // Do something with the extracted value
    }
}
var cellRange = worksheet.GetRange("A1:B2");
var values = cellRange.Values;

foreach (var row in values)
{
    foreach (var value in row)
    {
        // Do something with the extracted value
    }
}
Dim cellRange = worksheet.GetRange("A1:B2")
Dim values = cellRange.Values

For Each row In values
	For Each value In row
		' Do something with the extracted value
	Next value
Next row
$vbLabelText   $csharpLabel

Bu kod, hücre aralığını A1'den B2'ye kadar çıkarır ve her hücredeki değerler arasında dolaşır.

Sonuç

Bu eğitimde, C# kullanarak IronXL ile Excel sayfalarından nasıl veri çekileceğini, bir Excel dosyasının nasıl yükleneceğini, gerekli çalışma sayfasının nasıl getirileceğini, çalışma sayfasından nasıl veri alınacağını, verilerin nasıl çıkarılacağını ve bir veritabanına nasıl aktarılacağını inceledik. IronXL, Excel dosyaları ile çalışmak için özellik zengini bir API sunarak, Excel verilerini C# uygulamalarına kolaylıkla entegre etmeyi sağlar. IronXL ile, Excel dosyalarını okuyabilir, yazabilir ve verileri programlı olarak yönetebiliriz. Ayrıca, IronXL'yi rapor oluşturma, grafikler oluşturma ve hücreleri biçimlendirme gibi Excel görevlerini otomatikleştirmek için kullanabiliriz.

IronXL hakkında daha fazla

IronXL, küçük ve kolay hatırlanabilir fonksiyonlarla Excel & CSV dosyalarına okuma ve yazma için kullanıcı dostu ve pratik bir kütüphanedir.

Bu eğitimde, IronXL'nin neler yapabileceğinin sadece yüzeyine değindik. IronXL, hücre biçimlendirme, matematik fonksiyonları ve koşullu biçimlendirme gibi birçok ek özellik sunar.

IronXL kullanmanın kayda değer avantajları

  • .NET mühendislerinden özel destek, çapraz platform destekleri, Azure, AWS ve Docker.
  • Microsoft Visual Studio aracılığıyla basit kurulum
  • Geliştirme için ücretsiz deneme, lisanslar $999'den başlar
  • C# veya VB.NET projelerine kolay entegrasyon

Sıkça Sorulan Sorular

HTML'yi C# içerisinde PDF'ye nasıl dönüştürebilirim?

HTML dizgilerini PDF'lere dönüştürmek için IronPDF'ün RenderHtmlAsPdf yöntemini kullanabilirsiniz. Ayrıca, HTML dosyalarını RenderHtmlFileAsPdf kullanarak PDF'lere dönüştürebilirsiniz.

Interop olmadan C# dilinde bir Excel sayfasından veri nasıl çekilir?

IronXL ile C#'ta Excel dosyalarından veri almak için WorkBook sınıfını kullanarak Excel dosyasını yükleyebilir ve GetRow(), GetColumn() ve GetRange() gibi yöntemleri kullanarak verilere erişebilirsiniz.

C# ile Excel dosyalarını işlemek için IronXL kullanmanın ön koşulları nelerdir?

C#'da Excel dosyalarını işlemek için Microsoft Visual Studio, temel C# programlama bilgisi ve NuGet Package Manager aracılığıyla yüklenmiş IronXL kütüphanesine ihtiyacınız vardır.

IronXL'i Visual Studio projemde nasıl kurabilirim?

IronXL'yi kurmak için Visual Studio'yu açın, Çözüm Gezgini'nde projenize sağ tıklayın, 'NuGet Paketlerini Yönet' seçeneğini seçin ve Gözat sekmesinde 'IronXL' arayın. Projenize eklemek için 'Yükle'ye tıklayın.

IronXL kullanarak Excel dosyasını nasıl yüklerim?

WorkBook sınıfını kullanarak bir Excel dosyasını yükleyin. Örneğin, WorkBook workbook = WorkBook.Load("path/to/excel/file.xlsx");

IronXL kullanarak bir çalışma kitabından belirli bir çalışma sayfasını nasıl alabilirim?

Bir çalışma sayfasını, adını kullanarak alabilirsiniz: WorkSheet worksheet = workbook.WorkSheets["Sheet1"]; veya indeks numarasıyla: WorkSheet worksheet = workbook.WorkSheets[0];

IronXL kullanarak bir hücreden verileri nasıl çıkarırım?

Hücresinin indeksini kullanarak değerini alın, örneğin, object value = worksheet["A1"].Value; ve uygun veri türüne çevirin.

IronXL hem .XLS hem de .XLSX dosya formatlarıyla çalışabilir mi?

Evet, IronXL hem .XLS hem de .XLSX dosya formatlarında Excel tablolarını yükleyebilir ve oluşturabilir.

IronXL kullanarak bir hücre aralığını nasıl çıkarırım?

Belirli bir hücre aralığını çıkarmak için var cellRange = worksheet.GetRange("A1:B2"); kodunu kullanın ve değerler arasında dolaşın.

IronXL kullanmanın bazı faydaları nelerdir?

IronXL, .NET mühendislerinden özel destek, platformlar arası destek, Visual Studio aracılığıyla basit kurulum, ücretsiz deneme ve C# veya VB.NET projelerine kolay entegrasyon sunar.

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

Iron Destek Ekibi

Haftada 5 gün, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara