wincc打开指定文件_没有运行打开_正在运行则不打开
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.如何在WINCC中直接打开excel文件,如:E:\H.xls
#include "apdefap.h"
void OnLButtonDown(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, UINT nFlags, int x, int y)
{
ProgramExecute("C:\\Program Files\\Microsoft Office\\OFFICE11\\excel.exe E:\\H.xls");
}
用上面c脚本就可以实现。
1.C:\\Program Files\\Microsoft Office\\OFFICE11\\excel.exe 表示是用excel格式打开
2.E:\\H.xls 是指打开的文件路径
下面是VBS:
Dim objExcelAPP
Set objExcelAPP=CreateObject("Excel.Application")
objExcelAPP.Visible=True ‘显示要打开的文件或在后台运行
objExcelAPP.Workbooks.Open "D:\report\book1.xls"
2. 如何在Wincc中判断一个已存在的的Excel文件已经打开?(wincc打开指定文件,如果没有运行则打开,如果正在运行则不打开)
这里创建的是全局脚本VBS(为了能周期自动运行)
Option Explicit
Function action
On Error Resume Next
Dim xlApp,xlBook,oExcelFile
oExcelFile = "D:\sdsd.XLS" '全部代码只需改变文件的路径就可以,其他不用作任何改动Dim isXlsOpen
isXlsOpen = False
Set xlApp = GetObject(,"Excel.Application") '获取EXCEL进程
If TypeName(xlApp) <> "Application" Then '检测到有Excel进程已经打开
Set xlApp = CreateObject("Excel.Application")
End If
xlBookFind= false
For Each oBook In xlApp.WorkBooks '循环检查Excel进程打开的Workbooks
'MsgBox xlBook.FullName
If oBook.FullName = oExcelFile Then '如果路径与所检查的文件一致
Set xlBook = oBook
xlBookFind = True
Exit For
End If
Next
If xlBookFind=False Then '#如果没有找到
xlApp.Visible=True'要打开的文件是否显示或是在后台运行
Set xlBook = xlApp.Workbooks.Open(oExcelFile)
End If。