C# datagrid verilerini excel’ e aktaracağız arkadaşlar. Bir önceki yazımızda SQL Server‘ dan okuduğumuz ve datagrid üzerinde gösterdiğimiz verilerimizi şimdi Excel’ e göndereceğiz arkadaşlar. Bir önceki yazımızdaki kullandığımız formu kullanabilirsiniz. Bu sefer Excel butonuna çift tıklayarak aşağıdaki kodu yazın. İlk olarak excel kütüphanesini eklemediğiniz için hata alacaksınız. Excel Object Library kütüphanesini eklemek için Solution Express penceresinden Proje adınıza sağ tıklayarak add reference diyerek Excel Modulunu seçin.

C# Excel Kütüphanesi Eklemek

C# Excel Kütüphanesi Eklemek

// www.kaizen40.com

using System;
using System.Windows.Forms;

namespace WindowsFormsApp1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void BtnExcel_Click(object sender, EventArgs e)
        {
            try
            {
                Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();
                excel.Visible = true;
                Microsoft.Office.Interop.Excel.Workbook workbook = excel.Workbooks.Add(System.Reflection.Missing.Value);
                Microsoft.Office.Interop.Excel.Worksheet sheet1 = (Microsoft.Office.Interop.Excel.Worksheet)workbook.Sheets[1];

                int StartCol = 1;
                int StartRow = 1;

                for (int j = 0; j < DataGridView1.Columns.Count; j++)
                {
                    Microsoft.Office.Interop.Excel.Range myRange = (Microsoft.Office.Interop.Excel.Range)sheet1.Cells[StartRow, StartCol + j];
                    myRange.Value2 = DataGridView1.Columns[j].HeaderText;
                }

                StartRow++;

                for (int i = 0; i < DataGridView1.Rows.Count; i++)
                {
                    for (int j = 0; j < DataGridView1.Columns.Count; j++)
                    {
                        Microsoft.Office.Interop.Excel.Range myRange = (Microsoft.Office.Interop.Excel.Range)sheet1.Cells[StartRow + i, StartCol + j];
                        myRange.Value2 = DataGridView1[j, i].Value == null ? "" : DataGridView1[j, i].Value;
                    }
                }
            }
            catch (Exception hata)
            {
                MessageBox.Show(hata.StackTrace);
            }
        }
    }
}

İyi kodlamalar,


0 yorum

Bir yanıt yazın

Avatar placeholder

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.