Excel den veri okumak için aşağıdaki örnekten yararlanabilirsiniz. Okunan veriyi datatable’da tutuyorum. Ve excel bağlanıp datatable verinin aktarılması isi için bir metod yazıyorum. Sonrası datatable ulaşmak istediğiniz yerde yeni bir datatable oluşturup sadece metodu çağırıyorsunuz. Sonra datatable otomatik olarak doluyor. Bu arada excel kolonlara ulaşmak için kolon numaralarını kullanabilirsiniz. Ilk kolon sıfırdan başlıyor.
DataTable’i oluşturacak metod:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
DataTable getirExcelTablo() { string dosya_adres = @"C:\test\test.xls"; OleDbConnection baglanti = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + dosya_adres +";Extended Properties=Excel 8.0"); baglanti.Open(); string query = "select * from [calisma_sayfasi_adi$A1:C446] "; OleDbDataAdapter oAdp = new OleDbDataAdapter(query, baglanti); DataTable dt = new DataTable(); oAdp.Fill(dt); return dt; } |
Örneğin page load’a bu tabloya ulaşalım ve birinci kolondaki ilk değeri string bir değişkene atayalım.
1 2 3 4 5 6 7 8 9 |
protected void Page_Load(object sender, EventArgs e) { DataTable dt = getirExcelTablo(); for (int i = 0; i < dt.Rows.Count; i++) { string satir = dt.Rows[i][0].ToString(); } } |