目录
1. 简介:2.应用场景:3.源文件:1. 简介:
本文将分享按键精灵(Q语言)的一个脚本使用,自动实现从输出窗口A中,将输出的数据内容复制,然后粘贴到事先设置好的Excel表格B中。
2.应用场景:
需n次重复执行复制粘贴操作至Excel表格的不同单元格中(依次)。注意:因使用屏幕坐标进行定位,因此不同分辨率的桌面,运行脚本前需更改坐标参数。
更改坐标参数可通过按键精灵App中“抓抓”功能获取坐标,如下图:
话不多说,直接上代码。
3.源文件:
/*功能:自动采集单片机串口打印窗口A数据,并粘贴到execl窗口B指定单元格中 多次循环采集*//*****************使用脚本前请修改如下参数***************/Count = 6 //循环采集次数,可修改x0 = 472//0:“发送数据”按钮坐标y0 = 292x1 = 357//1:“填入excel表格的第一个数据”单元格坐标y1 = 520z1 = 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