Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 如何防止用户表单组合框的自动完成?_Excel_Userform_Vba - Fatal编程技术网

Excel 如何防止用户表单组合框的自动完成?

Excel 如何防止用户表单组合框的自动完成?,excel,userform,vba,Excel,Userform,Vba,例如,当我在Excel用户表单中键入组合框时,我有一个名为Shear all uppercase的列表项,如果我想添加另一个名为Shear的项,则只有第一个字母是大写的,程序将强制它看起来像这样:Shear 不过,我不想禁用自动完成功能,只是不想覆盖键盘键入的大小写 组合书如下所示: 我认为防止这种情况发生的唯一方法是禁用条目匹配。 因此,您需要设置组合框的名称 在“属性”窗口中,将MatchEntry属性更改为2-fmMatchEntryNone 或者,您可以使用文本框将新条目添加到组合框中。

例如,当我在Excel用户表单中键入组合框时,我有一个名为Shear all uppercase的列表项,如果我想添加另一个名为Shear的项,则只有第一个字母是大写的,程序将强制它看起来像这样:Shear

不过,我不想禁用自动完成功能,只是不想覆盖键盘键入的大小写

组合书如下所示:
我认为防止这种情况发生的唯一方法是禁用条目匹配。 因此,您需要设置组合框的名称

在“属性”窗口中,将MatchEntry属性更改为2-fmMatchEntryNone


或者,您可以使用文本框将新条目添加到组合框中。

我想知道为什么会被否决。对我来说,这听起来是一个合法的问题,有一个例子,与编程有关。@Pᴇʜ很难找到真正适合在这里发布的内容。尽管我能取得一些进步,但这对我来说是最重要的,尽管我得到了反对票。不过我尽量不发垃圾邮件。我先用谷歌搜索,然后在这里搜索谢谢。我试了一下,发现它不再自动完成了。所以我想这就是交易。我可能会把所有的大写字母都锁起来,这样就不会有problem@MarcSantos或者使用文本框输入并添加新条目作为折衷。虽然组合框中的代码将检测该项是否不在列表框中,但如果不在列表框中,则应添加该项。有一个自动完成是好的,这样用户就不会重复条目。如我在上面添加的照片所示,在执行添加之前,您可以通过让您的代码检查来排序重复项。就我个人而言,我会在组合框后面添加一个小按钮,触发输入框来添加新条目。这将使组合框成为一个简单的仅选择框,用户不能意外地添加新条目。他必须明确地决定按按钮添加一个。我在Msgbox中放置了一个带vbQuestion+vbYesNo的选项,然后做一个If-Then声明,要求澄清,以最大限度地减少事故。此外,有时某个条目会有很多变化,例如通信、灯光和水或通信、灯光和水,我希望用户看到它已经存在,因为如果我没有弄错的话,排序可能会被忽略