技术论坛

 回复:通过wincc上按钮打开电脑中一个没有创建的excel表

返回主题列表
作者 主题
学徒级人物
游侠

经验值:307
发帖数:105
精华帖:0
楼主    2011-11-17 09:06:21
主题:通过wincc上按钮打开电脑中一个没有创建的excel表
我想用wincc上一个按钮来打开一个文件夹内的EXCEL表,但是如果这个文件夹内原来没有创立excel表,那怎么新建一个并打开呢,我从网上找了以下脚本,但是打开已存在的excel表是可以的,创立一个新的excel表并打开好像不行,请各位大侠帮忙看看。。
这个脚本里应该写了如果当前文件夹里没有表格那就新建一个并打开,为什么没有呢?!!
Sub OnClick(ByVal Item)
On Error Resume Next '此句必须有,防止无EXCEL进程时GetObject出错退出
Dim xlsname,xlapp,xlbook,xlsheet,isOpen,i,TagName,TagValue,Layer,Cur_row ,tagtext,tag1
xlsname="D:\biaoge\新建 Microsoft Excel 工作表.xls" 'Excel文档路径
Set xlapp=GetObject(,"Excel.Application") '获取当前运行的Excel应用程序对象
If TypeName(xlapp)="Application" Then 'Excel已打开,遍历工作薄查找对应文档是否已打开
For Each xlbook In xlapp.Workbooks
If xlbook.FullName=xlsname Then
isOpen=True
Exit For
End If
Next
If Not isOpen Then '如果对应文档没打开则打开
Set xlbook=xlapp.Workbooks.Open(xlsname)
End If
Else '当前没有打开Excel程序则创建Excel应用程序并打开对应的文档
Set xlapp=CreateObject("Excel.Application")
Set xlbook=xlapp.Workbooks.Open(xlsname)
End If
最好的永远没有
youhm
至圣

经验值:13571
发帖数:4924
精华帖:81
1楼    2011-11-17 11:07:24
精华帖  主题:回复:通过wincc上按钮打开电脑中一个没有创建的excel表
下面新建Excel应用程序对象的地方添加判断是否正确打开文件的代码
Set xlapp=CreateObject("Excel.Application") '创建Excel应用程序对象
Set xlbook=xlapp.Workbooks.Open(xlsname) '打开指定的文件
If IsEmpty(xlbook) then '如果xlbook对象为空
Set xlbook=xlapp.Workbooks.Add ' 新建工作簿
xlbook.SaveAs xlsname ' 新工作薄保存为指定文件名
End if
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。