本人在线等谢谢各位!贴出代码:
异常: _Workbook workbook = workbooks.Add(path + "temp.xls");//这行报错说路径找不到
异常详细信息: System.Runtime.InteropServices.COMException: Excel 无法访问“temp.xls”。该文档可能为只读或加密文档。
[COMException (0x800a03ec): Excel 无法访问“temp.xls”。该文档可能为只读或加密文档。]
Microsoft.Office.Interop.Excel.Workbooks.Add(Object Template) +0
Web.Pages.OrderApply.ExportExcel() in D:Ssys\OrderApply.aspx.cs:227
Web.Pages.OrderApply.btnAdd_Click(Object sender, EventArgs e) in D:Ssys\OrderApply.aspx.cs:210
System.Web.UI.WebControls.LinkButton.OnClick(EventArgs e) +118
System.Web.UI.WebControls.LinkButton.RaisePostBackEvent(String eventArgument) +113
System.Web.UI.WebControls.LinkButton.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +9
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +176
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5563Microsoft.Office.Interop.Excel.Application app = new Microsoft.Office.Interop.Excel.Application(); if (app == null)
{
return;
}
app.Visible = false;
app.UserControl = true;
Workbooks workbooks = app.Workbooks;
string path = Server.MapPath("//sys-resources//file//");
_Workbook workbook = workbooks.Add(path + "temp.xls");//这里报错!!!!!
Sheets sheets = workbook.Worksheets;
_Worksheet worksheet = (_Worksheet)sheets.get_Item(1); //这里表示模板第一个sheet表
_Worksheet worksheet1 = (_Worksheet)sheets.get_Item(2); //这里表示模板第二个sheet表
_Worksheet worksheet3 = (_Worksheet)sheets.get_Item(3); //这里表示模板第三个sheet表
_Worksheet worksheet4 = (_Worksheet)sheets.get_Item(4); //这里表示模板第四个sheet表
_Worksheet worksheet5 = (_Worksheet)sheets.get_Item(5); //这里表示模板第五个sheet表
_Worksheet worksheet6 = (_Worksheet)sheets.get_Item(6); //这里表示模板第五个sheet表
// _Worksheet worksheet7 = (_Worksheet)sheets.get_Item(7); //这里表示模板第五个sheet表
if (worksheet == null)
{
return;
} List<PDFrame.Model.PSYS_SITEWEB> list = (List<PDFrame.Model.PSYS_SITEWEB>)ViewState["sitewebinfo"];
int a = 3,b =3, c =3, d =3, e = 3,f=3;
for (int k = 0; k < list.Count; k++)
{
if (list[k].PR == 5)
{
worksheet.Cells[a, 1] = list[k].SITENAME;
worksheet.Cells[a, 2] = list[k].DOMAINNAME;
worksheet.Cells[a, 3] = list[k].PR;
worksheet.Cells[a, 4] = list[k].CNSALEPRICE;
worksheet.Cells[a, 5] =list[k].BaiDuInclude;
worksheet.Cells[a, 6]= GetIsNewSite(list[k].APPROVALDATE)?"新站":"否";//是否新站
worksheet.Cells[a, 7]=list[k].ISSOLE=="0"?"否":"是";//是否独占
worksheet.Cells[a, 8] = list[k].ISALLSITE=="0"?"否":"是";//是否全站
a++;
} if (list[k].PR == 6)
{
worksheet1.Cells[b, 1] = list[k].SITENAME;
worksheet1.Cells[b, 2] = list[k].DOMAINNAME;
worksheet1.Cells[b, 3] = list[k].PR;
worksheet1.Cells[b, 4] = list[k].CNSALEPRICE;
worksheet1.Cells[b, 5] = list[k].BaiDuInclude;
worksheet1.Cells[b, 6] = GetIsNewSite(list[k].APPROVALDATE) ? "新站" : "否";//是否新站
worksheet1.Cells[b, 7] = list[k].ISSOLE == "0" ? "否" : "是";//是否独占
worksheet1.Cells[b, 8] = list[k].ISALLSITE == "0" ? "否" : "是";//是否全站
b++;
} if (list[k].PR == 7)
{
worksheet3.Cells[c, 1] = list[k].SITENAME;
worksheet3.Cells[c, 2] = list[k].DOMAINNAME;
worksheet3.Cells[c, 3] = list[k].PR;
worksheet3.Cells[c, 4] = list[k].CNSALEPRICE;
worksheet3.Cells[c, 5] = list[k].BaiDuInclude;
worksheet3.Cells[c, 6] = GetIsNewSite(list[k].APPROVALDATE) ? "新站" : "否";//是否新站
worksheet3.Cells[c, 7] = list[k].ISSOLE == "0" ? "否" : "是";//是否独占
worksheet3.Cells[c, 8] = list[k].ISALLSITE == "0" ? "否" : "是";//是否全站
c++;
} if (list[k].PR == 8)
{
worksheet4.Cells[d, 1] = list[k].SITENAME;
worksheet4.Cells[d, 2] = list[k].DOMAINNAME;
worksheet4.Cells[d, 3] = list[k].PR;
worksheet4.Cells[d, 4] = list[k].CNSALEPRICE;
worksheet4.Cells[d, 5] = list[k].BaiDuInclude;
worksheet4.Cells[d, 6] = GetIsNewSite(list[k].APPROVALDATE) ? "新站" : "否";//是否新站
worksheet4.Cells[d, 7] = list[k].ISSOLE == "0" ? "否" : "是";//是否独占
worksheet4.Cells[d, 8] = list[k].ISALLSITE == "0" ? "否" : "是";//是否全站
d++;
} if (list[k].PR == 9)
{
worksheet5.Cells[e, 1] = list[k].SITENAME;
worksheet5.Cells[e, 2] = list[k].DOMAINNAME;
worksheet5.Cells[e, 3] = list[k].PR;
worksheet5.Cells[e, 4] = list[k].CNSALEPRICE;
worksheet5.Cells[e, 5] = list[k].BaiDuInclude;
worksheet5.Cells[e, 6] = GetIsNewSite(list[k].APPROVALDATE) ? "新站" : "否";//是否新站
worksheet5.Cells[e, 7] = list[k].ISSOLE == "0" ? "否" : "是";//是否独占
worksheet5.Cells[e, 8] = list[k].ISALLSITE == "0" ? "否" : "是";//是否全站
e++;
} if (list[k].PR == 10)
{ worksheet6.Cells[f, 1] = list[k].SITENAME;
worksheet6.Cells[f, 2] = list[k].DOMAINNAME;
worksheet6.Cells[f, 3] = list[k].PR;
worksheet6.Cells[f, 4] = list[k].CNSALEPRICE;
worksheet6.Cells[f, 5] = list[k].BaiDuInclude;
worksheet6.Cells[f, 6] = GetIsNewSite(list[k].APPROVALDATE) ? "新站" : "否";//是否新站
worksheet6.Cells[f, 7] = list[k].ISSOLE == "0" ? "否" : "是";//是否独占
worksheet6.Cells[f, 8] = list[k].ISALLSITE == "0" ? "否" : "是";//是否全站
f++; } } string fileStr = path + "Demo.xls";
if (File.Exists(fileStr))
{
File.Delete(fileStr);
}
workbook.SaveAs(fileStr, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
异常: _Workbook workbook = workbooks.Add(path + "temp.xls");//这行报错说路径找不到
异常详细信息: System.Runtime.InteropServices.COMException: Excel 无法访问“temp.xls”。该文档可能为只读或加密文档。
[COMException (0x800a03ec): Excel 无法访问“temp.xls”。该文档可能为只读或加密文档。]
Microsoft.Office.Interop.Excel.Workbooks.Add(Object Template) +0
Web.Pages.OrderApply.ExportExcel() in D:Ssys\OrderApply.aspx.cs:227
Web.Pages.OrderApply.btnAdd_Click(Object sender, EventArgs e) in D:Ssys\OrderApply.aspx.cs:210
System.Web.UI.WebControls.LinkButton.OnClick(EventArgs e) +118
System.Web.UI.WebControls.LinkButton.RaisePostBackEvent(String eventArgument) +113
System.Web.UI.WebControls.LinkButton.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +9
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +176
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5563Microsoft.Office.Interop.Excel.Application app = new Microsoft.Office.Interop.Excel.Application(); if (app == null)
{
return;
}
app.Visible = false;
app.UserControl = true;
Workbooks workbooks = app.Workbooks;
string path = Server.MapPath("//sys-resources//file//");
_Workbook workbook = workbooks.Add(path + "temp.xls");//这里报错!!!!!
Sheets sheets = workbook.Worksheets;
_Worksheet worksheet = (_Worksheet)sheets.get_Item(1); //这里表示模板第一个sheet表
_Worksheet worksheet1 = (_Worksheet)sheets.get_Item(2); //这里表示模板第二个sheet表
_Worksheet worksheet3 = (_Worksheet)sheets.get_Item(3); //这里表示模板第三个sheet表
_Worksheet worksheet4 = (_Worksheet)sheets.get_Item(4); //这里表示模板第四个sheet表
_Worksheet worksheet5 = (_Worksheet)sheets.get_Item(5); //这里表示模板第五个sheet表
_Worksheet worksheet6 = (_Worksheet)sheets.get_Item(6); //这里表示模板第五个sheet表
// _Worksheet worksheet7 = (_Worksheet)sheets.get_Item(7); //这里表示模板第五个sheet表
if (worksheet == null)
{
return;
} List<PDFrame.Model.PSYS_SITEWEB> list = (List<PDFrame.Model.PSYS_SITEWEB>)ViewState["sitewebinfo"];
int a = 3,b =3, c =3, d =3, e = 3,f=3;
for (int k = 0; k < list.Count; k++)
{
if (list[k].PR == 5)
{
worksheet.Cells[a, 1] = list[k].SITENAME;
worksheet.Cells[a, 2] = list[k].DOMAINNAME;
worksheet.Cells[a, 3] = list[k].PR;
worksheet.Cells[a, 4] = list[k].CNSALEPRICE;
worksheet.Cells[a, 5] =list[k].BaiDuInclude;
worksheet.Cells[a, 6]= GetIsNewSite(list[k].APPROVALDATE)?"新站":"否";//是否新站
worksheet.Cells[a, 7]=list[k].ISSOLE=="0"?"否":"是";//是否独占
worksheet.Cells[a, 8] = list[k].ISALLSITE=="0"?"否":"是";//是否全站
a++;
} if (list[k].PR == 6)
{
worksheet1.Cells[b, 1] = list[k].SITENAME;
worksheet1.Cells[b, 2] = list[k].DOMAINNAME;
worksheet1.Cells[b, 3] = list[k].PR;
worksheet1.Cells[b, 4] = list[k].CNSALEPRICE;
worksheet1.Cells[b, 5] = list[k].BaiDuInclude;
worksheet1.Cells[b, 6] = GetIsNewSite(list[k].APPROVALDATE) ? "新站" : "否";//是否新站
worksheet1.Cells[b, 7] = list[k].ISSOLE == "0" ? "否" : "是";//是否独占
worksheet1.Cells[b, 8] = list[k].ISALLSITE == "0" ? "否" : "是";//是否全站
b++;
} if (list[k].PR == 7)
{
worksheet3.Cells[c, 1] = list[k].SITENAME;
worksheet3.Cells[c, 2] = list[k].DOMAINNAME;
worksheet3.Cells[c, 3] = list[k].PR;
worksheet3.Cells[c, 4] = list[k].CNSALEPRICE;
worksheet3.Cells[c, 5] = list[k].BaiDuInclude;
worksheet3.Cells[c, 6] = GetIsNewSite(list[k].APPROVALDATE) ? "新站" : "否";//是否新站
worksheet3.Cells[c, 7] = list[k].ISSOLE == "0" ? "否" : "是";//是否独占
worksheet3.Cells[c, 8] = list[k].ISALLSITE == "0" ? "否" : "是";//是否全站
c++;
} if (list[k].PR == 8)
{
worksheet4.Cells[d, 1] = list[k].SITENAME;
worksheet4.Cells[d, 2] = list[k].DOMAINNAME;
worksheet4.Cells[d, 3] = list[k].PR;
worksheet4.Cells[d, 4] = list[k].CNSALEPRICE;
worksheet4.Cells[d, 5] = list[k].BaiDuInclude;
worksheet4.Cells[d, 6] = GetIsNewSite(list[k].APPROVALDATE) ? "新站" : "否";//是否新站
worksheet4.Cells[d, 7] = list[k].ISSOLE == "0" ? "否" : "是";//是否独占
worksheet4.Cells[d, 8] = list[k].ISALLSITE == "0" ? "否" : "是";//是否全站
d++;
} if (list[k].PR == 9)
{
worksheet5.Cells[e, 1] = list[k].SITENAME;
worksheet5.Cells[e, 2] = list[k].DOMAINNAME;
worksheet5.Cells[e, 3] = list[k].PR;
worksheet5.Cells[e, 4] = list[k].CNSALEPRICE;
worksheet5.Cells[e, 5] = list[k].BaiDuInclude;
worksheet5.Cells[e, 6] = GetIsNewSite(list[k].APPROVALDATE) ? "新站" : "否";//是否新站
worksheet5.Cells[e, 7] = list[k].ISSOLE == "0" ? "否" : "是";//是否独占
worksheet5.Cells[e, 8] = list[k].ISALLSITE == "0" ? "否" : "是";//是否全站
e++;
} if (list[k].PR == 10)
{ worksheet6.Cells[f, 1] = list[k].SITENAME;
worksheet6.Cells[f, 2] = list[k].DOMAINNAME;
worksheet6.Cells[f, 3] = list[k].PR;
worksheet6.Cells[f, 4] = list[k].CNSALEPRICE;
worksheet6.Cells[f, 5] = list[k].BaiDuInclude;
worksheet6.Cells[f, 6] = GetIsNewSite(list[k].APPROVALDATE) ? "新站" : "否";//是否新站
worksheet6.Cells[f, 7] = list[k].ISSOLE == "0" ? "否" : "是";//是否独占
worksheet6.Cells[f, 8] = list[k].ISALLSITE == "0" ? "否" : "是";//是否全站
f++; } } string fileStr = path + "Demo.xls";
if (File.Exists(fileStr))
{
File.Delete(fileStr);
}
workbook.SaveAs(fileStr, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
2。右键文件,看只不是只读属性
3。确认权限,如果不清楚可以先设置成everyone完全控制
4。如果这个文件是新建的,要保存到某文件夹下,则要确认用户对文件夹有写权限调试吧
你的客户端将来和服务器是不在一台机器上的, 服务器怎么可能直接访问客户端的文件啊
我发布后访问的,我是用server.mappath获取的,他直接就是说找不到那文件呢!