功能说明:宁夏“智慧疫控普查”自动填表,手动输入验证码后提交即可。
一、准备工作
1.软件:按键精灵
按键精灵下载及安装
下载地址:http://download.myanjian.com/
点击下载安装即可
按键精灵导入代码
方式一:新建后将代码直接粘贴到源代码里。
方式二(推荐):将下载解压好的xxx.q直接拖到按键精灵中,点几次下一步完成即可。
2.PC端微信,且默认浏览器必须是微信自动浏览器
PC端微信浏览器打开页面
用手机端微信浏览器扫码打开填报页面,然后分享到PC端微信,用微信浏览器打开页面即可。
二、代码
运行代码一必须确保本地Excel能正常打开运行,代码一运行速度比代码二稍慢。
代码一
代码一(依赖本地Excel)
'Hwnd = Plugin.Window.Find(CefWebViewWnd, 0)
'Call Plugin.Window.Active(Hwnd)
Call Plugin.Office.OpenXls("C:\temp\套湾.xlsx")
Dim index, name, sex, id, phone,hz,dw,target
index = 0
For i = 2 To 500
name = Plugin.Office.ReadXls(1, i, 2)
target = Plugin.Office.ReadXls(1, i, 8)
If name <> "" and target = "" Then
index = i
Goto abc
End If
Next
Call Plugin.Office.CloseXls()
rem abc
name = Plugin.Office.ReadXls(1, index, 2)
sex = Plugin.Office.ReadXls(1, index, 3)
id = Plugin.Office.ReadXls(1, index, 4)
phone = Plugin.Office.ReadXls(1, index, 5)
hz = Plugin.Office.ReadXls(1, index, 6)
dw = Plugin.Office.ReadXls(1, index, 7)
Call Plugin.Office.WriteXls(1, index, 8, "是")
'两次Tab切换到市
KeyPress "Tab", 2
Delay 200
'4次 Down选中中卫市
KeyPress "Down", 4
Delay 500
'Tab切换到县区
KeyPress "Tab", 1
Delay 200
'3次Down选中海原县
KeyPress "Down", 3
Delay 500
'Tab切换到乡镇
KeyPress "Tab", 1
Delay 200
'3次Down选中西安镇
KeyPress "Down", 4
Delay 500
'Tab切换到村组
KeyPress "Tab", 1
Delay 200
'3次Down选中小河村
KeyPress "Down", 4
Delay 500
'输入村组
KeyPress "Tab", 1
Delay 200
SayString "套湾"
Delay 500
'Tab切换到楼号
KeyPress "Tab", 1
Delay 200
SayString hz & "家"
Delay 500
'Tab切换人员类别
KeyPress "Tab", 1
Delay 200
'8次Down选中H
KeyPress "Down", 8
Delay 200
'Tab切换到姓名
KeyPress "Tab", 1
Delay 200
SayString name
Delay 500
'Tab切换到性别 默认男,如果是女在Down一次
KeyPress "Tab", 1
Delay 200
If sex = "女" Then
KeyPress "Down", 1
Delay 500
End If
'Tab切换到身份证号
KeyPress "Tab", 1
Delay 200
SayString id
Delay 500
'Tab切换到户籍地址
KeyPress "Tab", 1
Delay 200
SayString "海原县西安镇小河行政村套湾" & hz & "家"
Delay 500
'Tab切换到 本人本市内存在无人居住的空置房 默认否
KeyPress "Tab", 1
Delay 200
'Tab切换到 手机号
KeyPress "Tab", 1
Delay 200
SayString phone
Delay 200
'Tab切换到 工作单位
KeyPress "Tab", 1
Delay 200
SayString dw
Delay 200
'6次Tab切换到 目前健康状况,默认健康
KeyPress "Tab", 6
Delay 200
'Tab切换到 1月17日以来与A\B\C\D四类人员有密切接触:
KeyPress "Tab", 1
Delay 200
KeyPress "Down", 1
Delay 200
'Tab切换到 是否与确诊或疑似病例有密切接触
KeyPress "Tab", 1
Delay 200
KeyPress "Down", 1
Delay 200
'Tab切换到 是否隔离
KeyPress "Tab", 1
Delay 200
KeyPress "Down", 1
Delay 200
Call Plugin.Office.CloseXls()
Call Plugin.Msg.Tips("脚本运行结束")
代码二
代码二(不依赖其他软件,速度更快)
'读取上次位置信息
LogFL = Plugin.File.OpenFile("C:\temp\log.txt")
Call Plugin.File.SeekFile(LogFL,0)
ps = Plugin.File.ReadLine(LogFL)
If ps = "" Then
ps = 0
End If
Call Plugin.File.SeekFile(LogFL,0)
Call Plugin.File.WriteLine(LogFL,ps+1)
Call Plugin.File.CloseFile(LogFL)
'根据位置信息读取数据
FL = Plugin.File.OpenFile("C:\temp\套湾.csv")
text = Plugin.File.ReadLine(FL)
For i = 0 To ps
text = Plugin.File.ReadLine(FL)
Next
Call Plugin.File.CloseFile(FL)
'填表单
sp = split(text, ",")
name = sp(1)
sex = sp(2)
id = sp(3)
phone = sp(4)
hz = sp(5)
dw = sp(6)
'两次Tab切换到市
KeyPress "Tab", 2
Delay 200
'4次 Down选中中卫市
KeyPress "Down", 4
Delay 500
'Tab切换到县区
KeyPress "Tab", 1
Delay 200
'3次Down选中海原县
KeyPress "Down", 3
Delay 500
'Tab切换到乡镇
KeyPress "Tab", 1
Delay 200
'3次Down选中西安镇
KeyPress "Down", 4
Delay 500
'Tab切换到村组
KeyPress "Tab", 1
Delay 200
'3次Down选中小河村
KeyPress "Down", 4
Delay 500
'输入村组
KeyPress "Tab", 1
Delay 200
SayString "套湾"
Delay 500
'Tab切换到楼号
KeyPress "Tab", 1
Delay 200
SayString hz
Delay 500
'Tab切换人员类别
KeyPress "Tab", 1
Delay 200
'8次Down选中H
KeyPress "Down", 8
Delay 200
'Tab切换到姓名
KeyPress "Tab", 1
Delay 200
SayString name
Delay 500
'Tab切换到性别 默认男,如果是女在Down一次
KeyPress "Tab", 1
Delay 200
If sex = "女" Then
KeyPress "Down", 1
Delay 500
End If
'Tab切换到身份证号
KeyPress "Tab", 1
Delay 200
SayString id
Delay 500
'Tab切换到户籍地址
KeyPress "Tab", 1
Delay 200
SayString "海原县西安镇小河行政村" & hz & "家"
Delay 500
'Tab切换到 本人本市内存在无人居住的空置房 默认否
KeyPress "Tab", 1
Delay 200
'Tab切换到 手机号
KeyPress "Tab", 1
Delay 200
SayString phone
Delay 200
'Tab切换到 工作单位
KeyPress "Tab", 1
Delay 200
SayString dw
Delay 200
'6次Tab切换到 目前健康状况,默认健康
KeyPress "Tab", 6
Delay 200
'Tab切换到 1月17日以来与A\B\C\D四类人员有密切接触:
KeyPress "Tab", 1
Delay 200
KeyPress "Down", 1
Delay 200
'Tab切换到 是否与确诊或疑似病例有密切接触
KeyPress "Tab", 1
Delay 200
KeyPress "Down", 1
Delay 200
'Tab切换到 是否隔离
KeyPress "Tab", 1
Delay 200
KeyPress "Down", 1
Delay 200
Call Plugin.Office.CloseXls()
Call Plugin.Msg.Tips("脚本运行结束")
三、资源准备
1.制作Excel数据
每一列的位置不能变,H列是否上报,制作时空着即可。
提取性别公式=IF(MOD(MID(D2,17,1),2)=0,"女","男")提取后复制再粘贴为值
![](http://www.herokay.cn/usr/uploads/2020/02/1786846554.png)
2.Excel转csv格式(代码一不用这一步操作)
点击另存为,保存为csv格式即可,警告信息不用管确定即可
![](http://www.herokay.cn/usr/uploads/2020/02/1489017096.png)
3.修改代码
每个人所处的市、县、区不一定相同,根据需要修改相应代码。
如何确定Tab后面次数要改为多少?
鼠标点一下上一个输入框,然后按一下Tab键,然后按键盘上向下的箭头,次能出现你需要的值就改为几次
代码一和代码二基本一致,这地方以代码二为例修改
![](http://www.herokay.cn/usr/uploads/2020/02/3050141479.png)
如果你两个代码都导入了,工作是指能选中一个运行,按键精灵默认按F10运行代码。
[代码.zip](http://www.herokay.cn/usr/uploads/2020/02/2603048172.zip)