加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

模拟键盘操作的VBA程序

(2008-02-18 11:47:25)
标签:

部门预算

程序

杂谈

分类: EXCEL真奇妙
写在前面
在工作中,有一次遇到一个问题,一个财政预算的软件,需要在里面填写人员及工资数据。有些数据如数字信息可以从EXCEL中直接复制到软件中粘贴,但是诸如“人员分类”、“职级”一类的信息是选择性的,在软件中,需要用鼠标点要填写的单元格,然后选择对应的信息,如“人员分类”下面有“在职”、“离休”、“退休”、“退职”四项,“职级”下面有“正处级”、“副处级”......等近20项(回头再做这个工作时再截图吧,现在电脑上已经没有这个软件了)。
由于此工作很恶心,因为我单位人多,一个一个地点,点得眼花缭乱,所以想到通过程序来模拟键盘的按键来完成此工作。
注:键盘的操作过程为:先选择要处理的单元格,然后按回车,呼出下拉列表,再按若干次向下的箭头键定位到对应的信息上,然后按下回车键确认,这样一条记录就录入完成了。继续按向下的箭头键,就定位到下一条记录了,然后重复上面的操作,直至全部数据录入完成。
 

Sub 编制性质()
    Application.OnTime Now + TimeValue("00:00:10"), "dobzxz"
End Sub
Sub 级别()
    Application.OnTime Now + TimeValue("00:00:10"), "dojb"
End Sub

Sub 在册职工状况()
    Application.OnTime Now + TimeValue("00:00:10"), "dozczgzk"
End Sub
Sub 文化程度()
    Application.OnTime Now + TimeValue("00:00:10"), "dowhcd"
End Sub

Sub 规范津贴()
    Application.OnTime Now + TimeValue("00:00:10"), "dogfjt"
End Sub
Sub 基本工资开支渠道()
    Application.OnTime Now + TimeValue("00:00:10"), "dokzqd"
End Sub

Sub 退休级别()
    Application.OnTime Now + TimeValue("00:00:10"), "dotxjb"
End Sub
Sub 退休开支渠道()
    Application.OnTime Now + TimeValue("00:00:10"), "dotxkzqd"
End Sub
Sub dobzxz()
    For i = 1 To 1224
        SendKeys "~"
        For j = 1 To 4
            SendKeys "{DOWN}"
        Next j
        SendKeys "~"
        SendKeys "{DOWN}"
    Next i
End Sub

Sub dogfjt()
    For i = 1 To 12
        SendKeys " "
        SendKeys "{DOWN}"
    Next i
End Sub

Sub dojb()
    For i = 1 To 1223
        SendKeys "~"
        For j = 1 To Sheets("级别").Cells(i, 3).Value
            SendKeys "{DOWN}"
        Next j
        SendKeys "~"
        SendKeys "{DOWN}"
    Next i
End Sub

Sub dozczgzk()
    For i = 1 To 1223
        SendKeys "~"
        SendKeys "{DOWN}"
        SendKeys "~"
        SendKeys "{DOWN}"
    Next i
End Sub

Sub dowhcd()
    For i = 1 To 1223
        SendKeys "~"
        For j = 1 To Sheets("学历").Cells(i, 3).Value
            SendKeys "{DOWN}"
        Next j
        SendKeys "~"
        SendKeys "{DOWN}"
    Next i
End Sub
Sub dokzqd()
    For i = 1 To 1223
        SendKeys "~"
        SendKeys "{DOWN}"
        SendKeys "~"
        SendKeys "{DOWN}"
    Next i
End Sub


Sub dotxjb()
   For i = 1 To 3
       SendKeys "~"
       For j = 1 To Sheets("退休级别").Cells(i, 3).Value
           SendKeys "{DOWN}"
       Next j
       SendKeys "~"
       SendKeys "{DOWN}"
   Next i
'
End Sub
Sub dotxkzqd()

End Sub

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有