在Excel中,如何才能做到,按下键盘上的某些键,就会在规定的单元格内自动输入固定的数据呢?
首先我们来看下表!
上表中,是学生收费的记录表,其中,应交学费,每个学生的都是同样的,这些数据,不需要我们输入。我们所需要输入的是学生的住宿费。
一、问题需求
住宿费用,分为两种,一种是200元,另外一种是300元。
针对这张表,我们得这样来做,先找到学生姓名在哪一行,然后,找到对应的D列单元格,输入学生的住宿费,完成学生的收费情况。
现在,有个严峻的问题摆在我们面前,找到了学生姓名在哪行之后,每次都得在D列输入要么是200要么是300的数据,并且,学生人数如果达几千人,这样输入是不效益的!
二、要实现的功能
对准上面的表格来看,现在,我们要做的就是:通过查找的方法,找到学生姓名所在的位置之后,按下F2会在当前行的D列相应的单元格输入200,按下F3就输入300,以此实现快速输入。
比如,当我们找到“冰山”这个学生姓名之后,选中的是A6单元格,现在,只要按下F3,就会自动在D6这个单元格,自动输入这个学生的住宿费300。
三、理论知识指导
要想实现这种功能,必须使用Excel监听按键的功能。此外,还要判断出当前所选择的单元格所在的行。这样,就完全可以通过按下功能键,在当前行的规定位置,自动输入数据了。
四、所需要的代码
要想实现此功能,非VBA不可,并且,没有一点基础的,是很难学习该技术的。因此,本站力求简单,不再阐述更多的与此相关性不大的话题。
首先,在ThisWordbook中的代码有两个事件代码。
照着输入就行了。
再次,在“模块1”中的代码如下。
照着输入即可。
代码说明:
Public MyRow As Integer首先定义一个公有变量,用来检测所选中的单元格所在的行,以此为参照对象,在当前行实现自动输入数据的功能。
为了能及时的获取当前行,必须使用MyRow = Target.Row代码获取行号,另外,此代码必须放在Workbook_SheetSelectionChange事件内。
上述的所有代码,可以说没有几行代码。但是,逻辑性稍微强点,希望您能搞清楚在什么地方使用什么代码,在此基础之上,您方可修改并加以利用。