目录
- 1. 简介:
- 2.应用场景:
- 3.源文件:
1. 简介:
本文将分享按键精灵(Q语言)的一个脚本使用,自动实现从输出窗口A中,将输出的数据内容复制,然后粘贴到事先设置好的Excel表格B中。
2.应用场景:
需n次重复执行复制粘贴操作至Excel表格的不同单元格中(依次)。注意:因使用屏幕坐标进行定位,因此不同分辨率的桌面,运行脚本前需更改坐标参数。
更改坐标参数可通过按键精灵App中“抓抓”功能获取坐标,如下图:
话不多说,直接上代码。
3.源文件:
/*功能:
自动采集单片机串口打印窗口A数据,并粘贴到execl窗口B指定单元格中
多次循环采集*//***************** 使用脚本前请修改如下参数 ***************/
Count = 6 //循环采集次数,可修改
x0 = 472 //0:“发送数据”按钮坐标
y0 = 292
x1 = 357 //1:“填入excel表格的第一个数据”单元格坐标
y1 = 520
z1 = 140 //1:单元格之间的间隔
waitime = 6000 //等待6秒
Log_path = "D:\新建文件夹\a.log" //创建日志文件 a.log ,路径/***************** 使用脚本前请修改如上参数 ***************/VBSBegin //插入VBScript代码块Dim resultresult = MsgBox("是否开始数据采集?”," & chr(13) & "取消,将退出脚本运行!", vbOKCancel,"数据采集")If result = vbCancel Then MessageBox "欢迎下次使用!"ExitScript ElseIf result = vbOK Then'空语句End IfVBSEndLogStart Log_path //开始记录日志
For i=1 To Count //for循环TracePrint "采集成功次数:" & i Call Plugin.Msg.ShowScrTXT(500, 0, 1024, 768, "正在进行第 " & i &"次数据采集,请勿移动鼠标!", "0000FF") //屏幕中显示提示字体'==========以下是操作窗口A==========MoveTo 565,120 //选定窗口ADelay 1000LeftClick 1MoveTo 565,120 //移动鼠标到“需要复制的文本”初始处Delay 100LeftClick 1 //左键单击1次Delay 100MoveTo 565,120 //选中字符串Delay 1000LeftDown 1 //左键按下MoveTo 840,120Delay 1000LeftUp 1 //左键弹起Delay 1000KeyDown 17, 1 //Ctrl+CKeyPress 67, 1KeyUp 17, 1Delay 5MoveTo x0,y0 //点击“发送数据”,获取下一次需要复制粘贴的数据Delay 1000LeftClick 1Delay 1000 '==========以下是操作窗口B==========MoveTo 713,591 //选定窗口B(Excel表格)Delay 1000LeftClick 1Delay 1000s = x1 + i*z1'MessageBox "x:"&s &"y:" &y1MoveTo s,y1 //定位单元格,依次将采集数据复制到6个不同的单元格中Delay 1000LeftClick 1Delay 1000KeyDown 17, 1 //Ctrl+VKeyPress 86, 1KeyUp 17, 1Delay waitimeNextCall Plugin.Msg.ShowScrTXT(500, 0, 1024, 768, "数据采集已完成!", "0000FF")
LogStop //记录日志停止 ExitScript