20 Nisan 2013 Cumartesi

C# - Word'e Veri Aktarma

      Merhaba arkadaşlar, bu yazımda C# ile veri tabanından çekip datagridview'da görüntülediğimiz verileri word belgesine aktarmaktan bahsedeceğim. Öncelikle Solutions Explorer penceresindeki References'e sağ tıklayıp Add Reference diyoruz. Açılan penceren Microsoft Office 14.0 Object Library ve Microsoft.Office.Interop.Word'ü ekliyoruz. Daha sonra using kısmında bunları belirtmemiz gerekiyor. using kısmına şunu ekliyoruz:
using Word = Microsoft.Office.Interop.Word;

      Ben ilk başta basit bir entity framework sorgusu ile verilerimi datagridview'a aktardım. Daha Sonra WordAktar isminde bir fonksiyon yazdım. Kodlarım:


//öncelikle word uygulamasını ve dokümanını oluşturuyoruz.
static Word.Application WordUygulama = new Word.Application();
Word.Document WordDocument = WordUygulama.Documents.Add(Type.Missing, Type.Missing, Type.Missing, Type.Missing);
public void WordAktar()
{
     //word'ü görünür yaptık ve A4 formatında olduğunu belirttik
     WordUygulama.Visible = true;
     WordDocument.PageSetup.PaperSize = Word.WdPaperSize.wdPaperA4;
            
     //yazının sağa dayalı ve kalın olmasını belirttik..     WordUygulama.Selection.ParagraphFormat.Alignment = Word.WdParagraphAlignment.wdAlignParagraphLeft;
     WordUygulama.Selection.Font.Bold = (int)Word.WdConstants.wdFirst;

     //datagridview'deki verileri word e aktardık.
     for (int i = 0; i < dataGridView1.Rows.Count; i++)
     {
         for (int j = 0; j < dataGridView1.Columns.Count-1; j++)
         {
  WordUygulama.Selection.TypeText(dataGridView1[j, i].Value.ToString() + " ");
         }
         WordUygulama.Selection.TypeParagraph();
     }

     //dosyayı kaydeteceğimiz yolu belirttik VE kaydettik
string Wyol = @"C:\Users\PC\Desktop\" + DateTime.Now.ToShortDateString() + ".docx";
WordDocument.SaveAs(Wyol, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);

}

      Artık kodu geliştirmek size kalmış :) İsterseniz yazı tipi ve boyutunu, görüntüleyeceğiniz kağıt formatını da ayarlayabilirsiniz. Son olarak ben dosya yolu olarak masaüstünü belirttim, siz bu yolu istediğiniz şekilde değiştirebilirsiniz.


Hiç yorum yok:

Yorum Gönder

SQL Server - Satırları Birleştirme

Merhaba,  Bu yazımda sql server'da birden çok satırı birleştirip tek satır yapmayı anlatacağım. Senaryomuz şu şekilde olsun mesela; bir...