昨天,我作了一个小小调查,虽然参与人数不多,但是结果也具有代表性。 近8成的人选择了VBA进阶!! 我们的VBA基础课程仍然会继续开始,不过,为了满足广大朋友的愿望,我们今天可以中间穿插一些进阶课,而且这些课程将不会影响我们VBA基础知识的学习。请看以下动画: 这就是我们今天的主题,模糊查找匹配并自动输入的功能。 至于这里,还添加有其他的东西,我们不打算深入,下面,我们就从0开始准备来输入这些东西。 上图是我们准备的基础资料。在基础信息里面,包含有所有的布匹名称信息,我们将在输入功能这张表的B2单元格输入指定的布匹名称。 首先,我们先在录入表格中输入一个TextBox和一个ListBox,如下图所示: 第二步,我们要添加一段代码,让我们的文本输入框TextBox刚好与录入单元格B2重合,并在点击B2的时候,启动这两个控件,且显示表1里面的所有清单。 瞬间,单击并出清单的功能就做出来了,So easy!! 参数解释: Left:左边框 Top:上边框 Width:宽度 Height:长度 ListBox1.AddItem:意思是向ListBox里面添加条目。 至此,我们的第一步已经完成,单击出现清单。 但是,光出现清单不行啊,我们得双击任何一个条目的时候,能实现录入到单元格的功能。所以,接下来就有一个ListBox的双击事件,请看以下代码: 以上代码也是输入在刚刚那个工作表代码框里面的,意思很简单,即双击之后,当前单元格的内容等于我们双击的内容。 然而,到这我们仍然没有结束,我们似乎忘记了题目,模糊输入匹配功能。 这个才是今天的重点,我们要在TextBox框输入品名中任意一个或连续的多个字符的时候,能出现符合这些条件的值。 别急,代码接着来: 代码解析: Instr(原字符串,查找字符串):表示的意思是在某字符或者字符串在原字符串中的位置; Ucase:将字符串转换成大写,这样可以忽略大小写; 这是一个TextBox的KeyUp事件:即键盘松开的事件,也就是说,只要输入一个字符,就会进行匹配一次。 看看这个动画图片,是否有似曾相识的感觉呢?? 支持原创! Good Good Study! Day Day Up! |
|