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