WINCC中如何编写vbs程序可以弹出保存路径对话框,或者另存为对话框

WINCC中如何编写vbs程序可以弹出保存路径对话框,并将excel文件默认以当前时间命名(可以修改文件名)保存到自己想保存的路径下

最佳答案

vbs调用保存对话框的方法不止一种,但都依赖于其它组件/控件,我最终测试下来比较好用的(win7 64位系统)是调用sarrcdlg.dll,这个文件可以自行去网上搜
以下代码仅供参考:
------------------------------------------------------------------------------------------------------------
dim objDialog,objFSO,intReturn
dim a,b,c,d,e,f,g,z

''''需要下载和注册SAFRCFileDlg.dll文件
''''-----------------------------------------------------------------------------------------------------
''''以下两行语句存入记事本,并把文件扩展名由txt改为bat,然后双击执行,注意bat文件需要与dll文件在一个目录
''''32位系统注册代码(去掉前面的单引号)
''''Copy /y safrcdlg.dll %windir%\system32\
''''regsvr32/s %windir%\system32\safrcdlg.dll
''''-----------------------------------------------------------------------------------------------------
''''64位系统注册代码(去掉前面的单引号)
''''Copy /y safrcdlg.dll %windir%\SysWOW64
''''regsvr32 %windir%\SysWOW64\safrcdlg.dll
''''-----------------------------------------------------------------------------------------------------


Set objDialog = WScript.CreateObject("SAFRCFileDlg.FileSave")

Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")


''''文件名和后缀,可酌情修改
a = now()
b = year(a)
c = month(a)
d = day(a)
e = hour(a)
f = minute(a)
g = second(a)
z = b & c & d & e & f & g 
objDialog.FileName = InputBox("文件名称:","文件名",z)

objDialog.FileType = ".xlsx"
intReturn = objDialog.OpenFileSaveDlg

If intReturn Then
 
   objFSO.CreateTextFile objDialog.FileName & objDialog.FileType,True,True
Else
 
   WScript.Quit

End If

提问者对于答案的评价:
您好 sarrcdlg.dll 这个我网上搜索不到呢

最佳答案作者回复:
抱歉,昨天直接建了一个vbs文件测试ok,今天在wincc中测试不行,原因是WSH对象不被wincc支持,wincc用createobject方法代替Wsh随附的对象,但是safrcfiledlg并非windows自带对象,因此即使用createobject方法也不行

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc355063.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 上午2:13
下一篇 2021年7月5日 上午2:13

相关推荐

  • UseAdmin.dll要怎么样注册啊??

    UseAdmin.dll要怎么样注册啊?? 最佳答案 需要注册吗?引用就可以了 提问者对于答案的评价:恩 专家置评 正常情况下的确不需要注册,T-C4正解。

    SIMATIC WinCC 2019年6月11日
  • 设置值保持

    如何让设置的参数,在下次上电是保持住,是不是要那个函数。 最佳答案 不知道你说的是内部变量还是外部变量?内部变量保持的话,WinCC 7.0提供“运行系统保持”功能,在内…

    SIMATIC WinCC 2019年6月11日
  • WinCC flexible项目打不开的原因

    WinCC flexible项目,有时会打不开,打开的进度很慢,而且,到好像是100%的进度了,但就是不出来软件的画面。遇到这种情况,有时把正常的cache文件夹复制到安…

    2017年6月8日
  • wincc 报表,涉及变量计算的日报表怎么做?谢谢

    (一)有三个压力变量,报表要显示五列,第一列是整点时间(24小时),后面三列是这三个变量,最后两列分别是第一个压力与第三个的差,第二个压力与第三个的差(二)这个报表每天8点钟自动打…

    SIMATIC WinCC 2017年12月7日
  • WinCC输入输出域中显示值跳变

    使用WinCC中的输入输出域,显示来自PLC的温度信号,假设实际值是20度的话,输入输出域显示的数值老是在20和-1875之间跳变。不知道是什么原因,但是其他的画面中的输入输出域显…

    SIMATIC WinCC 2019年6月11日
  • wincc还是和plc不能通讯

    安装wincc的机子上装有cp5611板卡,wincc使用cp5611通讯卡通过MPI连接plc时,当诊断MPI网络时,点击测试会出现以下错误; 错误 0x03…

    SIMATIC WinCC 2019年6月11日
  • WINCC能仿真吗?

    WINCC能像STEP7SIM那样仿真吗?我想试试我编辑的画面效果咋样,尤其是按钮能否将相应的点(M0.0)置1或者置0.因为生产情况不允许我有太多时间在线修改,必须保证修改后就马…

    SIMATIC WinCC 2019年6月11日
  • WINCC脚本里面如何写一个脉冲信号

    #include "apdefap.h"void OnLButtonDown(char* lpszPictureName,&nbs…

    SIMATIC WinCC 2018年12月9日
  • win cc v7.0 打开窗口

    在画面上创建一个画面窗口,然后再创建一个按钮,用C动作SetPropBOOL(lpszPictureName,"Tag","visible"…

    2017年11月29日
  • 用PC作上位机的相关视频学习资料

    用PC作上位机,控制监控多台PLC下位机,哪里有“上位机软件和各种接口、上位机和下位机通讯等视频学习资料”。 最佳答案 你说的这个可不是一个资料啊!最简单的告诉你就在百度上搜索:w…

    SIMATIC WinCC 2017年8月15日

发表回复

登录后才能评论