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

相关推荐

  • wincc flexible 系统更新

    wincc flexible 系统OS更新时,传送中断,触摸屏无法启动,怎样用软件处理?谢谢。 最佳答案 最好把什么屏说一下,有没有网口。比更新OS更狠的就足恢…

    SIMATIC WinCC 2021年7月5日
  • WINCC报表打印怎么加报表名称?

    WINCC报表需要打印,因为几个报表数据差不多,容易弄混,想给打印出的报表增加名称,例如:车间1数据记录、车间2数据记录等,由此来区分报表的不同。应该怎么处理? 最佳答案 通用方法…

    SIMATIC WinCC 2018年12月14日
  • 关于WINCC下拉框的初始值

    最近做了一个项目,用到了WINCC的下拉框,有点问题如下:假设下拉框里共有3项:1—-小明2—-小红3—-小强关联的变量是“学员姓名”,默认值设置的为1—-小明,那…

    SIMATIC WinCC 2021年7月5日
  • MP277 如何用VBS脚本在插入的U盘中创建文件夹并移动U盘内的CSV文件

    我在MP277中用VBS脚本定期记录变量并以CSV文件保存在插入的U盘中,测试成功。    现需要写一段脚本,自动创建文件夹并定时将保存的C…

    SIMATIC WinCC 2019年6月10日
  • 请教一下,winCC web发布后部分操作不执行是什么原因呢?

    我这的调用摄像头的程序。在本地winCC是可以截图保存,录像都可以保存到设置的文件夹。但我用IE进入,按钮显示NO INPUT。预览界面可以,但如果要触发像截图这种要保存…

    2021年7月5日
  • Wcc的对象Group

    Wcc的对象Group是怎么来的?我由一个项目中用到了,但是不知到他怎么加上去的?请指教。 图片说明:    最佳答案 按住Shift键选中需要编组的对象,右键…

    2018年12月5日
  • winccflexible 版本确定

    我用V1.3.0.0_1.83.0.1版本(见图2)打开项目,提示版本不正确,不能打开(见图1).我想知道什么版本的可以打开这个项目。 图片说明:    &nb…

    2018年12月3日
  • 怎样来实现控件火的大小?

    怎样在WinCC画面中来控制控件火的大小?答案也可以发在我的邮箱里:TSXDTLL@126.COM   谢谢! 问题补充:我就1个变量,怎么在大小火的…

    SIMATIC WinCC 2019年6月11日
  • WINCC下载问题

    我用WINCC作的组态下载到触摸屏时,先做OS更新,然后在下载画面,OS更新完之后,为什么有的能下载,有的不能,现在有四快触摸屏,只有一块是用WINCC作的,而且下载画面时很难,不…

    SIMATIC WinCC 2019年6月11日
  • wincc归档数据导出到EXCEL后,自动进行分列操作

    wincc归档数据导出到EXCEL后,每次都要人工进行分列操作,调整列宽。怎样能自动进行分列操作,按模板设定的自动调整列宽? 钻石用户推荐最佳答案 请见附图操作。 图片说明: &n…

    2021年7月5日

发表回复

登录后才能评论