ورود

View Full Version : مشكل با خروجي اكسل



sgb110
شنبه 14 فروردین 1389, 14:22 عصر
سلام
من چند جا رو واسه گرفتن خروجي اكسل ديدم و تونستم با اين كد ها از گريدم خروجي بگيرم


Microsoft.Office.Interop.Excel.Application oXL;
Microsoft.Office.Interop.Excel.Workbook oWB;
Microsoft.Office.Interop.Excel.Worksheet oSheet;
Microsoft.Office.Interop.Excel.Range oRange;
// Start Excel and get Application object.
oXL = new Microsoft.Office.Interop.Excel.Application();
// Set some properties

// Get a new workbook.
oWB = oXL.Workbooks.Add(Missing.Value);
// Get the active sheet
oSheet = (Microsoft.Office.Interop.Excel.Worksheet)oWB.Acti veSheet;
oSheet.Name = "Report";
// Process the DataTable
// BE SURE TO CHANGE THIS LINE TO USE *YOUR* DATATABLE
// DataTable dt = Customers.RetrieveAsDataTable();
int column=1;
foreach (DataControlField col in GridView1.Columns)
{
oSheet.Cells[1, column] = col.HeaderText.Trim();
column++;
}
int rowCount = 2;
foreach (GridViewRow row in GridView1.Rows)
{
column = 1;
foreach (DataControlField col in GridView1.Columns)
{
oSheet.Cells[rowCount, column] = row.Cells[column-1].Text.Trim();
column++;
}
rowCount += 1;
}




// Resize the columns
oRange = oSheet.get_Range(oSheet.Cells[1, 1],
oSheet.Cells[rowCount, 3]);
oRange.EntireColumn.AutoFit();
oXL.Visible = true;
oXL.DisplayAlerts = false;
// Save the sheet and close
//oSheet = null;
//
//oRange = null;
//oWB.SaveAs("test.xls", Excel.XlFileFormat.xlWorkbookNormal,
// Missing.Value, Missing.Value, Missing.Value, Missing.Value,
// Excel.XlSaveAsAccessMode.xlExclusive,
// Missing.Value, Missing.Value, Missing.Value,
// Missing.Value, Missing.Value);
//oWB.Close(Missing.Value, Missing.Value, Missing.Value);
// oWB = null;
// oXL.Quit();
// Clean up
// NOTE: When in release mode, this does the trick
GC.WaitForPendingFinalizers();
GC.Collect();
GC.WaitForPendingFinalizers();
GC.Collect();



رو سيستم خودم كه ويندوز7 هست و افيسم هم 2007 هيچ مشكلي نيست
ولي وقتي پرو‍ژه رو بردم رو ويندوز سرور 2003 كار نكرد
حتي رو اون سيستم آفيس 2007 خودم رو هم نصب كردم ولي بازم كار نكرد
صفحه ارور جاوا اسكريپتي مي ده

ممنون مي شم راهنمايم كنيد

ironman
شنبه 14 فروردین 1389, 14:45 عصر
متن خطایی که میده رو بزارید تا بشه راهنمایی کرد:متفکر:

sgb110
شنبه 14 فروردین 1389, 15:18 عصر
سلام

اين خطا رو تو زمان اجرا مي ده


Line: 604
Error: Sys.WebForms.PageRequestManagerServerErrorExceptio n: Old format or invalid type library. (Exception from HRESULT: 0x80028018 (TYPE_E_INVDATAREAD))
ورژن دات نت كه فكر نكنم مشكل داشته باشه رو دو تا سيستم 3.5 نصب هست
آفيس هم جفتشون 2007 هست

ironman
شنبه 14 فروردین 1389, 17:29 عصر
تا اونجایی که از متن خطا مشخص هست مربوط به ورژن نیست و با جستجو به این نتیجه رسیدم که این یکی از باگهای آفیس هست و مربوط میشه به تنظیمات زبان دستگاه!!!! زمانی که زبان سیستم چیزی به جز زبان english-un باشه....
برای راهکار هم میتونید به اینجا (http://support.microsoft.com/kb/320369/) و همچنین اینجا (http://www.microsoft.com/communities/newsgroups/list/en-us/default.aspx?dg=microsoft.public.windows.powershel l&tid=a4ffbc46-c170-4fb2-b158-54f409365e8b&p=1) مراجعه کنید
امیدوارم به دردتون بخوره:چشمک:
موفق باشین