问题描述
手动运行都正常,但是自动运行就不行了,请教达人!代码:-------------------------------SubInitializeOnErrorGotoerrpDimsessionAsNewNotesSessionDimdbAsNotesDatabaseDimviewAsNotesviewDimdocAsNotesdocumentDimexcelapplicationAsVariantDimexcelworkbookAsVariantDimexcelsheet1AsVariantDimexcelsheet2AsVariantDimiAsIntegerDimuvcolsAsIntegerDimselectionAsVariantDimExcelNameAsStringDimExcelName1AsString'ExcelName=Cstr(Year(Now))+"-"+Cstr(Month(Now))+"-"+Cstr(Day(Now))+Cstr(Hour(Now))+Cstr(Second(Now))ExcelName1=Cstr(Year(Now))+"-"+Cstr(Month(Now))+"-"+Cstr(Day(Now))+""+Cstr(Hour(Now))+Cstr(Second(Now))ExcelName="\172.29.17.4diet"+ExcelName1+".xls"'MsgboxExcelNameSetexcelapplication=CreateObject("Excel.Application")excelapplication.statusbar="正在创建工作表,请稍等....."excelapplication.Visible=Falseexcelapplication.Workbooks.Addexcelapplication.referencestyle=2Setexcelsheet1=excelapplication.Workbooks(1).worksheets(1)Setexcelsheet2=excelapplication.Workbooks(1).worksheets(2)excelsheet1.name="中餐"excelsheet2.name="晚餐"DimrowsAsIntegerDimcolsAsIntegerDimrows2AsIntegerDimcols2AsIntegerDimmaxcolsAsIntegerDimfieldnameAsStringDimfieldname2AsStringDimfitemAsNotesItemDimfitem2AsNotesItemrows=1cols=1Setdb=session.CurrentDatabaseSetview=db.GetView("VwDietExport")uvcols=Ubound(view.Columns)Forx=0ToUbound(view.Columns)excelapplication.statusbar="正在创建单元格,请稍等....."Ifview.Columns(x).IsHidden=FalseThenIfview.Columns(x).title<>""Thenexcelsheet1.Cells(rows,cols).value=view.Columns(x).Titleexcelsheet2.Cells(rows,cols).value=view.Columns(x).Titlecols=cols+1EndIfEndIfNextmaxcols=cols-1Setdoc=view.GetFirstdocumentIfdocIsNothingThenMsgbox"没有预订记录,现在终止!"ExitSubEndIfrows=2cols=1rows2=2cols2=1WhileNot(docIsNothing)fieldname2=view.Columns(2).itemnameSetfitem2=doc.GetFirstItem(fieldname2)'Msgboxdoc.GetFirstItem(fieldname2).text'Printfitem2.textForx=0ToUbound(view.Columns)excelapplication.statusbar="正在从Notes中引入数据,请稍等....."Ifview.Columns(x).IsHidden=FalseThenIfview.Columns(x).title<>""Thenfieldname=view.Columns(x).itemnameSetfitem=doc.GetFirstItem(fieldname)Iffitem2.text="L"Thenexcelsheet1.Cells(rows,cols).value=fitem.Textcols=cols+1Elseiffitem2.Text="S"Thenexcelsheet2.Cells(rows2,cols2).value=fitem.Textcols2=cols2+1EndIfEndIfEndIfNextIffitem2.text="L"Thenrows=rows+1Elseiffitem2.Text="S"Thenrows2=rows2+1EndIfcols=1cols2=1Setdoc=view.GetNextdocument(doc)Wendexcelapplication.statusbar="数据导入完成。"excelapplication.workbooks(1).saveas(ExcelName)excelapplication.workbooks.closeExitSuberrp:Msgbox"("&Cstr(Erl)&")->"&Error$(Err)ExitSubEndSub
解决方案
解决方案二:
loadamgr先
解决方案三:
同意楼上,先检查,Agent的签名在Server中自动运行的权限吧
解决方案四:
你的服务器安装Excel没有?自动运行是在服务器上运行的。
解决方案五:
同意引用1楼ta0004073的回复:
loadamgr先
解决方案六:
1、检查服务器是否安装了Excel2、检查agent的安全标签里面的安全级别设置,至少要是第二级的,默认是第一级
解决方案七:
加上几个msgbox。看看是否真的是没有运行。再看看运行的服务器是否设置正确了。
解决方案八:
CreateObject("Excel.Application")这个,服务器必须要装Excel,那服务器应该在windows平台.否者这代码是无法执行的
解决方案九:
代理是拷贝过去的吗,重新建立一个定时代理,将代码拷贝过去试试
解决方案十:
引用5楼cnscns的回复:
1、检查服务器是否安装了Excel2、检查agent的安全标签里面的安全级别设置,至少要是第二级的,默认是第一级
同意这位,手动运行成功,说明由excel了检查下Agent属性吧,设置成2.Allowrestrictedoperations应该就可以了