每当我使用这段代码时,
Set oExcel = CreateObject("Excel.Application")
Set oWorkbook = oExcel.Workbooks.Open(sPathToTemplate)
oExcel.Range("shipping_name").Value = strShippingName
oWorkbook.Close()
Set oWorkbook = Nothing
Set oExcel = Nothing
服务器上的Excel进程冻结,单元格永远不会改变。至少看起来是这样的。
工作簿打开得很好,如果我没有尝试更改任何单元格内容,代码就会完成而不会出现错误。但是,当我重新添加更改并刷新页面时,EXCEL.exe进程出现在任务管理器中,脚本停止响应。我必须手动终止该进程才能使其超时。
我能做些什么来让代码正常工作吗?
发布于 2010-12-08 22:34:22
这可能是因为您没有保存工作簿。在桌面上,这会导致Excel生成一个“是否要保存更改?”对话框。
尝试添加
oWorkbook.saved = true
在关闭工作簿之前。这将告诉Excel不要关心工作簿是否已更改(但不会保存文档)。如果你的asp能工作,那就是保存对话框出了问题。要实际保存更改,需要调用其中一个
oWorkbook.Save
oWorkbook.SaveAs
方法
https://stackoverflow.com/questions/4388322
复制相似问题