RaMaZaN :)

22Haz/095

ASP ile Excel Export(Excel Rapor) Alma

ASP ile burada Excel import olayını anlatmıştım. ASP ile excel rapor almak ise import'a göre oldukça basittir. Bildindiği gibi ASP'de ekrana yazdırma olayı Response ile yapılmaktadır ve response objesine ait propertiesler bulunmaktadır.

ASP ile Excel Export olayı Response nesnesine ait methodları kullanarak yapılmaktadır. Örneğin:

<%
Response.Clear()
Response.Buffer = True
Dim str
str = "<table border=1 class=mysmalltext><tr bgcolor=""#d8ecea"">"
str = str & "<td>ID</td>"
str = str & "<td>AD</td>"
str = str & "<td>SOYAD</td>"
str = str & "<td>PUAN</td>"
str = str & "</tr>"
str = str & "<tr>"
str = str & "<td>1</td>"
str = str & "<td>Ramazan</td>"
str = str & "<td>ULUÇAY</td>"
str = str & "<td>80</td>"
str = str & "</tr>"
str = str & "<tr>"
str = str & "<td>2</td>"
str = str & "<td>Ahmet</td>"
str = str & "<td>yyy</td>"
str = str & "<td>90</td>"
str = str & "</tr>"
str = str & "<tr>"
str = str & "<td>3</td>"
str = str & "<td>Mehmet</td>"
str = str & "<td>zzz</td>"
str = str & "<td>100</td>"
str = str & "</tr>"
str = str & "</table>"

Response.AddHeader "Content-Disposition", "attachment;filename=export.xls"
Response.ContentType = "application/vnd.ms-excel"
Response.Write str
%>

Yukarda vermiş olduğum örnekte görüldüğü gibi Response nesnesinin Clear, Buffer, AddHeader, ContentType ve Write methodları kullanılmıştır. Kısaca değinecek olursak; Clear methodu ile bufferda bulunan HTML kodları temizlemeye yaramaktadır. Response.Buffer = False ise Response.Clear kullanmanız hataya sebep verebilir.

Response.Buffer ile HTML data akışının tamamlanıp HTML dosya oluşturulduktan sonra göster veya her satır işletilmesi tamamlandığında göster anlamına gelmektedir. Daha anlaşılır olması için örnek vermekte fayda var. Bazı sitelerde dikkatinizi çekmiştir sayfalar parça parça gelmektedir. Eğer buffer kullanılmış olsaydı sayfanın hepsi aynı anda gelirdi.

Response.AddHeader methodu ile header ekliyoruz. Dikkat ederseniz zaten attachment olduğu görülmektedir. Bunun sayesinde filename isminde bir dosya download edilmesini sağlanmıştır.

Response.ContentType ile mimenin tipini belirtiyoruz. Excel için mime application/vnd.ms-excel'dir.

ve son. Response.Write ile tablomuzu yazdırıyoruz. Görüldüğü gibi Excel Export almak aslında çok basittir. Kodlamamıza sadece fazladan bir kaç satır eklemek gerekiyor.

Şuana kadar 2445 defa okundu.

Bu yazıyı beğendiniz mi?

RSS Kaynağımıza abone olun!

Etiketler: Yorum gönder.
Yorumlar (5) Geri izlemeler (0)
  1. hocam, emeklerinize sağlık, uzun süredir bulamdığım bir konuda destek isteyecektim…

    excelde şirketin bir servis listesi var bu listeyi asp ile ekran seçmeli olarka getirmke istiyorum

    yani listeden şehir seçeceğiz, ilçe sececeğiz ve bu ilcedeki servislerin detay bilgileri gelecek, bunun imkanı ve yolu var mı….

  2. wallahi iyi oldu sanki =) baya bi aradım düzgün çalışanını

  3. gerçekten güzel ve faydalı bir paylaşım.benim bir sorum olacak bu şekilde yaptığımız excel sayfasının sayfa yapısını ve yazdırılacak alanını nasıl ayarlarız.

  4. Faydalı olduğunu görmek güzel :)

  5. çok faydalı bir paylaşım olmuş, vesileyle sitenizden de haberdar olduğuma çok memnunum.

    teşekkürler.


Leave a comment

(required)

Geri izleme yok.