C# Excel Dosyasından ListBox’ a Veri Çekme

sdkbyrm

olwα.ɴeт
Üyelik Tarihi
23 Aralık 2020
Mesajlar
813
Beğeniler
1
Puanı
3
Ticaret: 0 / 0 / 0
Bu örnekte bilgisayarda herhangi bir yerde olan Excel dosyasındaki verilerin C# Windows Form içinde eklenmiş olan Listbox içine nasıl getirilebileceğimizi göreceğiz.


Örneğimizde dosyamızın konumunu seçebilmek için openFileDialog kontrolünden faydalanacağız.

Doosya seçim işlemi bittiğinde excel dosyasında A sütununda bulunan verilerin Listbox içine aktarıldığını göreceğiz.

excel-listbox-veri-cekme.gif


Bu örnekte sadece tek sütunlu bir excel dosyası kullanacağız. Eğer daha fazla sütun bulunan bir excell dosyasından DataGridView içine veri çekmek isterseniz daha önce hazırlamış olduğum konuya buradan göz atabilirsiniz.

Örneğimize geçelim.

İlk adım olarak C# Form içine birer adet listbox, button ve openFileDialog kontrolü ekleyelim.

excel-listbox-veri-cekme-2.jpg


Bağlantı için gerekli satırımız;


1
2
3

using System.Data.OleDb;


Şimdi de Button1_Click olayı için alttaki kodları yazalım.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

private void button1_Click(object sender, EventArgs e)
{
openFileDialog1.Title = "Lütfen Dosya Seçiniz";
openFileDialog1.Filter = " (*.xlsx)|*.xlsx";
openFileDialog1.FilterIndex = 1;
openFileDialog1.Multiselect = true;
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
string dosya_adres = openFileDialog1.FileName; OleDbConnection con = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + dosya_adres + ";Extended Properties=Excel 12.0");
con.Open();
string sql = "SELECT * from [Sayfa1$A1:A5000] ";
OleDbCommand veri2 = new OleDbCommand(sql, con); OleDbDataReader dr = null;
dr = veri2.ExecuteReader();

while (dr.Read())
{
if (dr[0] != "")
{
listBox1.Items.Add(dr[0].ToString());
}
else
{
break;
}
}
con.Close();
}
}
 
Üst Alt