PDA

View Full Version : سوال: مشکل در کار با اکسل



aliprf
سه شنبه 21 مهر 1388, 09:21 صبح
سلام دوستان
من یه سری مثال برای کار با اکسل پیدا کردم ولی در موقع اجرا برام مشکلی پیش میاد

یک استثنا رخ میده به صورت

old format or librery

کامپوننت های Com مورد نظر رو هم اضافه کردم
:گریه:

اَرژنگ
سه شنبه 21 مهر 1388, 10:44 صبح
سلام دوستان
من یه سری مثال برای کار با اکسل پیدا کردم ولی در موقع اجرا برام مشکلی پیش میاد

یک استثنا رخ میده به صورت

old format or librery

کامپوننت های Com مورد نظر رو هم اضافه کردم
:گریه:

ورژن اکسل که نصب است چیه؟
یک پروژه ساده خالی که این مشکل را نشان بده بفرستید ، امتحان کنیم، ببینیم فقط این مشکل شماست یا همه؟

behroz1387
سه شنبه 21 مهر 1388, 16:33 عصر
دوست عزيز من هم اين مشكل دارم
ممنون ميشم جواب بديد

اَرژنگ
سه شنبه 21 مهر 1388, 16:58 عصر
دوست عزيز من هم اين مشكل دارم
ممنون ميشم جواب بديد

ورژن اکسل که نصب است چیه؟
یک پروژه ساده خالی که این مشکل را نشان بده بفرستید ، امتحان کنیم، ببینیم فقط این مشکل شماست یا همه؟

masoud_j
چهارشنبه 22 مهر 1388, 02:54 صبح
دوست عزيز من هم اين مشكل دارم
ممنون ميشم جواب بديد



من هم همین مشکل رو داشتم. توی PC من به اين دليل بود که region اکسل با کشوری که توی ويندوز انتخاب کرده بودم نمی خوند. باید اول تنظیمات خودتو ذخيره کنی بعد کشور رو به en-US تغيير بدی و در آخر تابع تنظیمات رو به حالت اول برگردونی.
اين کد که من نوشتم برای Export کردن داده ها از Data Grid View به اکسل هست ببين به دردت ميخوره. (dgvReport از نوع Data Grid View هست و توی برنامه مقدار گرفته)


public static void exportXYZ()
{
try
{
System.Globalization.CultureInfo CurrentCI =
System.Threading.Thread.CurrentThread.CurrentUICul ture;
System.Threading.Thread.CurrentThread.CurrentCultu re =
new System.Globalization.CultureInfo("en-US");

Microsoft.Office.Interop.Excel.Application excelApp = new
Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel.Workbook excelBook =
excelApp.Workbooks.Add(XlSheetType.xlWorksheet);
Microsoft.Office.Interop.Excel.Worksheet excelWorksheet =
(Worksheet)(excelBook.Worksheets[1]);
excelApp.Visible = true;
Range rng1 = excelWorksheet.get_Range("A1", "A1");
rng1.Value2 = "X";
rng1.Font.Bold = true;
Range rng2 = excelWorksheet.get_Range("B1", "B1");
rng2.Value2 = "Y";
rng2.Font.Bold = true;
Range rng3 = excelWorksheet.get_Range("C1", "C1");
rng3.Value2 = "Z";
rng3.Font.Bold = true;

for (int i = 0; i < dgvReport.RowCount; i++)
{
for (int j = 0; j < dgvReport.ColumnCount; j++)
{
if (dgvReport.Rows[i].Cells[j].Value != null)
excelWorksheet.Cells[i + 1, j + 1] = dgvReport.Rows[i].Cells[j].Value.ToString();
}
}
System.Threading.Thread.CurrentThread.CurrentCultu re = CurrentCI;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}