VBA代码限制文本框的输入

来源:互联网 阅读:- 发布:2020-03-27 06:30:27

题记:非常期间,希望大家静下心,多学习有用的知识,多提高自己的水平和能力,这才是正道。适当节制自我的各种欲望,谁都逃不过时间的历练,谁都是命运的行者,谁都是在人生的道路上一步一趋,把生活与工作打理好,不负年华。欲成大事者,必先修其身。欲修其身者,先正其心。小成靠智,大成靠德。身不修则德不立,德不立则无以成事。

今日内容是和大家分享VBA编程中常用的 "积木"过程代码,这些内容大多是取至我编写的"VBA代码解决方案"教程中内容。今日分享的是NO.208-NO.208,内容是:

NO. 208:在VBA代码中使用限制文本框的输入

VBA过程代码208:在VBA代码中使用限制文本框的输入

Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)

Select Case KeyAscii

Case Asc("0") To Asc("9")

Case Asc("-")

If InStr(1, Me.TextBox1.Text, "-") > 0 Or _

Me.TextBox1.SelStart > 0 Then

KeyAscii = 0

End If

Case Asc(".")

If InStr(1, Me.TextBox1.Text, ".") > 0 Then

KeyAscii = 0

End If

Case Else

KeyAscii = 0

End Select

End Sub

代码解析: KeyPress事件过程,只允许输入数字字符和一个"-"号、一个"."号。如果键盘输入的是0到9之间的数字字符,则允许输入。如果键盘输入的是"-"号,先使用InStr函数测试文本框中是否已有"-"号,如果InStr函数返回值大于0,说明文本框中已有"-"号。接下来使用文本框的SelStart 属性来测试插入点,如果文本框的SelStart 属性值大于0,说明"-"号的插入点不是第一个。如果以上两个条件中有任何一个成立,将KeyAscii参数值设置为0,使文本框只能在第一位输入一个"-"号。


VBA是实现自己小型办公自动化的有效手段,我根据自己20多年的VBA实际利用经验,现推出了四部VBA学习教程,这些是我多年编程经验的记录,也是我"积木编程"思想的体现。每一讲都是一块"积木",可以独立的完成某些或者某类的过程。利用这些可以大大提高自己的编程效率。

第一套:"VBA代码解决方案"是PDF教程,是VBA中各个知识点的讲解,覆盖了绝大多数的知识点,是初学及中级以下人员必备;

第二套:"VBA数据库解决方案"是PDF教程,数据库是数据处理的利器,对于中级人员应该掌握这个内容了。

第三套:"VBA数组与字典解决方案"是PDF教程,讲解VBA的精华----字典,是我们打开思路,提高代码水平的必备。

第四套:"VBA代码解决方案"视频教程。目前正在录制,"每天20分钟,精进VBA",越早参与,回馈越多。现在录制到第三册的124讲,以上各教程的代码都是经过实测,可以拿来即用。

懒惰是很奇怪的东西,它使你以为那是安逸,是休息,是福气;但实际上它所给你的是无聊,是倦怠,是消沉。

不要懒惰还是多学习些有用的知识吧,哪怕只是点滴。

推荐阅读:华为最具性价比手机