Osman KURT

Yazılım Uzmanı | MVC Eğitmeni

ASP.Net de Excelden Veri Okumak

Merhaba arakadaşlar yine işinize çok yarayacağını düşüğüm bir kodu sizinle paylaşacağım. Bildiğiniz üzere güzel Türkiyemizde veriler her zaman mssql de veritabanında saklanmıyor. Çoğu insanımız verilerini hücre mantığı olduğu ve kullanımı kolay olduğu için Microsoft office Excel de saklıyor. Onun için bizde excelden veri okutmayı baya bir yerde projede kullanabiliyoruz.Uzmatmadan kodumuzageçelim isterseniz.

DataTable getirTumATSTablo()
{
 string dosya_adres=@"C:\osmankurt.xls";
 OleDbConnection baglanti = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + adresimiz + ";Extended Properties=Excel 8.0");
baglanti.Open();

 string query = "select * from [Tablo1$C2:F200] ";
OleDbDataAdapter oAdp = new OleDbDataAdapter(query, baglanti);
DataTable dt = new DataTable();
oAdp.Fill(dt);
return dt;

Kodlarımız bu kadar arkadaşlar.dikkat etmenizi istediğim bir nokta ise hücre yönetimi eğer kodları birkez daha incelerseniz string query kısmında hücre adreslerini verdiğimizi göreceksiniz. Benim kodlarımda C2 ile F200 arası kalan veriler okunmaktadır.Yararlı olması dileğiyle.

Görüşmek Üzere;

Osman KURT

Yazılım Geliştirici ve Grafiker 

Yorumlar (5) -

  • mehmet

    11.08.2011 06:20:26 | Yanıtla

    Öncelikle emeğinize teşekkür ederiz.
    Tablonun adı Tablo1 değilse bunu dinamik olarak nasıl algılatırız?

    • osmankurt

      11.08.2011 14:12:59 | Yanıtla

      Dinamik olarak alğılatmaktan ziyade oraya bir kontrol atarız ve ön yüzden dinamik olarak biz söyleriz tablo adını bu bir textbox da olabilir başka bir kontrol de olabilir.

  • havva

    17.12.2015 09:33:08 | Yanıtla

    merhabalar
    Verdiğiniz bu bilgilerden dolayı teşekkür ederim.Size bir sorum olacaktı.Hazırladığım bir rapora bir ay önceki ve bir yıl önceki oranları da eklemem gerekiyor. Bu raporu hergün yapıyorum. Bunu en kısa yoldan nasıl yapabilirim, mümkün müdür? Yani istediğim 17.12.2015 raporuna 17.11.2015 ve 17.12.2014 raporlarından bir kısmı eklemek. hem excelden veri alıp hem de ekleyebileceğim bir kod bloğu nasıl olur, yardımcı olabilir misiniz?

    • Osman KURT

      18.12.2015 17:37:29 | Yanıtla

      Daha detaylı bilgi verebilir misin? Yardımcı olabilmem için.

      • havva

        21.12.2015 14:00:22 | Yanıtla

        20.12.2015 tarihli raporu hazırlarken 20.11.2015 tarihli rapordan müşteri sayısı ve toplam satış miktarını , 20.12.2014 tarihi rapordan da müşteri sayısı ve toplam satış miktarını alıyorum. Rapordaki sütunları yazayım isterseniz.Müşteri sayısı, fiş ortalaması,20.12.2015,müşteri sayısı,fiş ortalaması,20.11.2015,müşteri sayısı,fiş ortalaması,20.12.2014.50 mağazamız var bunların satışlarını listeliyorum.

Loading