PDA

View Full Version : مشکل در Export کردن Datagridview در Excel



mousa1992
جمعه 17 آذر 1391, 00:54 صبح
سلام دوستان
ممنون میشم تجاربتون رو قرار بدید

این کل کدی هست که برا export کردن نوشتم:
Microsoft.Office.Interop.Excel.ApplicationClass excelApp = new Microsoft.Office.Interop.Excel.ApplicationClass();

excelApp.Application.Workbooks.Add(Type.Missing);
excelApp.Columns.ColumnWidth = 20;

for (int i = 0; i < dgwStudents.Columns.Count - 1; i++)
{
string Header = dgwStudents.Columns[i].HeaderText;
if (Header != "" && Header != "ColumnID" && Header != "ColumnGender")
excelApp.Cells[1, i + 1] = dgwStudents.Columns[i].HeaderText;
}

for (int i = 0; i < dgwStudents.Rows.Count - 1; i++)
{
if (Convert.ToBoolean(dgwStudents.Rows[i].Cells["ColumnPrint"].Value))
{
excelApp.Cells[i + 1, 1] = dgwStudents.Rows[i].Cells["ColumnName"].Value.ToString();
excelApp.Cells[i + 1, 2] = dgwStudents.Rows[i].Cells["ColumnFamily"].Value.ToString();
excelApp.Cells[i + 1, 3] = dgwStudents.Rows[i].Cells["ColumnFatherName"].Value.ToString();
excelApp.Cells[i + 1, 4] = dgwStudents.Rows[i].Cells["ColumnBearthDate"].Value.ToString();
excelApp.Cells[i + 1, 5] = dgwStudents.Rows[i].Cells["ColumnMeliCode"].Value.ToString();
excelApp.Cells[i + 1, 6] = dgwStudents.Rows[i].Cells["ColumnMeliCode"].Value.ToString();
excelApp.Cells[i + 1, 7] = dgwStudents.Rows[i].Cells["ColumnTahsilat"].Value.ToString();
excelApp.Cells[i + 1, 8] = dgwStudents.Rows[i].Cells["ColumnAddress"].Value.ToString();
}

excelApp.ActiveWorkbook.SaveCopyAs(@"C:\Users\ASUS\Desktop\Students.xls");
excelApp.ActiveWorkbook.Saved = true;
excelApp.Quit();
}

خب اروری که برنامه میگیره از سطر دوم هست

Old format or invalid type library. (Exception from HRESULT: 0x80028018 (TYPE_E_INVDATAREAD))
دوستان متشکرم از توجهتون و اینکه باید چیکارش کنم ؟
ایا با این روش میشه اطلاعات فارسی ذخیره کرد؟

mousa1992
شنبه 18 آذر 1391, 09:46 صبح
دوستان ممنون میشم تجاربتون رو قرار بدید

ma.rad
شنبه 18 آذر 1391, 11:08 صبح
سلام،سوالتون بسیار تکراری! قبل از ایجاد تا پیک جستجو کنید.

نسخه .net رو روی 4 بزارید حل می شه.

mousa1992
شنبه 18 آذر 1391, 11:22 صبح
روی 3.5 هست !
ممنون از توجهتون