为Excel编个智能输入器
 
在日常工作和学习中,人们常常需要向一个有着十几列甚至更多列的Excel工作表中输入数据。在数据输入过程中,为保证输入数据的准确性,录入者每次都要来回移动表格,核对已经录入的数据,操作起来很不方便。其实大可不必这么费事,只要利用Excel的宏功能,在Visual Basic编辑器中设计一个输入窗体,如图1所示,这样既方便了数据的输入,又提高了输入的准确性。下面就跟随笔者来一次亲身体验吧。
设计输入窗口
第一步:启动Excel 2003(其他版本请仿照操作),打开相应的工作表,执行“工具→宏→Visual Basic编辑器”命令,进入VBA编辑状态。
第二步:在左侧的工程资源管理器窗口中,选择相应的工作表(如“备案数据”),执行“插入→用户窗体”命令,插入一个用户窗体(Userform1),并根据需要调整窗体的大小。此时,控件工具箱自动展开,如图2所示。
小提示
如果工程资源管理器没有打开,可以通过执行“视图→工程资源管理器”命令来打开。如果控件工具箱不展开的话,执行“视图→工具箱”命令即可。
第三步:单击工具箱上的“标签”按钮,然后在窗体上拖拉出一个标签来,并在标签中输入相应的字符(如“备案编号”等),调整好标签的大小,将其定位在窗体的合适位置上。重复上述操作,完成其他标签的制作工作。
第四步:单击工具箱上的“文字框”按钮,然后在窗体上拖拉出一个文字框来,调整好文字框的大小,将其定位在窗体的合适位置上。重复上述操作,完成其他文字框的制作工作。
小提示
制作标签和文字框时,请按照数据的录入顺序进行,以免出错。
第五步:单击工具箱上的“复合框”按钮,然后在窗体上拖拉出一个复合框来,调整好复合框的大小,将其定位在窗体的“结构类型”标签的右侧。
第六步:单击工具箱上的“命令按钮”,然后在窗体上拖拉出一个命令按钮来,调整好命令按钮的大小,将其定位在窗体的合适位置上。右击此命令按钮,在随后弹出的快捷菜单中,选择“属性”选项,打开“属性—CommandButton1”对话框,如图3所示。切换到“按分类序”选项卡,展开“外观”标签,将“Caption”选项后面的字符修改为“添加”,关闭对话框返回。
第七步:仿照上面的操作,再添加一个“退出”命令按钮。
设计窗口代码
第一步:双击“添加”命令按钮,进入VBA编辑状态,将下述代码输入到空白区域中。
Private Sub CommandButton1_Click()
Range("A1").Select '选中A1单元格
Selection.End(xlDown).Select
'将光标定位到最后一行第一个单元格中
ActiveCell.Offset(1, 0).Range("A1") = TextBox1.Text
'将相应的数据输入到表格下一行的相应单元格中
ActiveCell.Offset(1, 0).Range("B1") = TextBox2.Text
ActiveCell.Offset(1, 0).Range("C1") = TextBox3.Text
ActiveCell.Offset(1, 0).Range("D1") = TextBox4.Text
ActiveCell.Offset(1, 0).Range("E1") = TextBox5.Text
ActiveCell.Offset(1, 0).Range("F1") = TextBox6.Text
ActiveCell.Offset(1, 0).Range("G1") = TextBox7.Text
vba做excel窗体录入教程
ActiveCell.Offset(1, 0).Range("H1") = TextBox8.Text
ActiveCell.Offset(1, 0).Range("I1") = ComboBox1.Text
ActiveCell.Offset(1, 0).Range("J1") = TextBox9.Text
ActiveCell.Offset(1, 0).Range("K1") = TextBox10.Text
ActiveCell.Offset(1, 0).Range("L1") = TextBox11.Text
ActiveCell.Offset(1, 0).Range("M1") = TextBox12.Text
ActiveCell.Offset(1, 0).Range("N1") = TextBox13.Text
End Sub
小提示
上述代码中,英文单引号“'”及其后面的字符是对代码的解释,在实际输入中,是可以不输入的。
第二步:双击“退出”命令按钮,进入VBA编辑状态,将下述代码输入到空白区域中。
Private Sub CommandButton2_Click()
End
End Sub
第三步:双击“复合框”命令按钮,进入VBA编辑状态,将下述代码输入到空白区域中。
Private Sub UserForm_Initialize()
ComboBox1.AddItem "砖混"
'代码表示在复合框中添加相应的下拉选项
ComboBox1.AddItem "框架"
ComboBox1.AddItem "框混"
ComboBox1.AddItem "道路"
ComboBox1.AddItem "桥梁"
ComboBox1.AddItem "框剪"
ComboBox1.AddItem "其他"
End Sub
输入完成后,关闭VBA窗口,返回到工作表编辑窗口。
设计数据录入按钮
第一步:在Excel工作表中,执行“视图→工具栏→控件工具箱”命令,打开“控件工具箱”工具栏,如图4所示。
第二步:单击工具栏上的“命令按钮”,然后在工作表中拖拉出一个命令按钮来,调整好命令按钮的大小,将其定位在工作表的合适位置上。
第三步:右击此命令按钮,打开“属性”对话框(类似图3),将“Caption”选项后面的字符修改为“数据录入”,关闭对话框返回。
第四步:双击此命令按钮,再次进入VBA编辑状态,将下述代码输入到空白区域中。
Private Sub CommandButton1_Click()
Userfrom1.Show
End Sub
第五步:输入完成后,关闭VBA窗口,返回到工作表编辑窗口,按一下工具栏上的“退出设计模式”按钮,退出设计状态。
需要录入数据时,只要单击一下“数据录入”按钮,系统弹出如图1所示的窗体,将相应的数据填入(或选择填入)到对应文本框中,检查无误后,按下“添加”按钮,即可将数据添加到工作表的尾部。完成录入工作后,按下“退出”按钮,关闭输入窗口。
小提示
为了使宏能够顺利运行,需要将宏的安全性设置为“中”。执行“工具→宏→安全性”命令,打开“安全性”对话框,在“安全级”选项卡中,将宏安全级设置为“中”选项,按“确定”按钮返回即
可。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。