VBA / EXCEL动态命名范围,包括文本和数字

时间:2014-09-09 14:22:05

标签: excel vba excel-vba combobox

信息

我有一个大约300个零件编号的专栏,不断扩展。这些部件号只能是数字,只能是字母,或两者的组合。我正在使用带有零件编号的动态命名范围来填充组合框列表。当用户在组合框中键入部件号时,如果我们在自动填充之前已经完成了该部分,因为他们继续键入。我最近遇到了一个问题,但最近添加了一组零件。零件编号只是一个六位数字,是唯一的零件编号,仅由数字组成,每隔一个都有字母,或者如果它只是数字,则部件号中有连字符。我填充此命名范围的组合框确实在其列表中显示这些数字部件号,但在用户键入时不会自动填充它们,并且当部件号完成时不会自动填充与其他文本框中的部件号相关联的其他信息输入。

问题

任何人都可以帮助我理解为什么它不会自动填充数值但是它会填充所有其他值吗?

代码

这是我用来填充组合框列表和动态范围公式的代码。如果您还需要其他任何东西来帮助您给出答案,请告诉我。

=OFFSET('Part List'!$A$1,0,0,COUNTA('Part List'!$A:$A),1)    

comboxPartNumber.List = Range("Part_Number").Value

List of Sample Parts
X-600-ASSY-SM
LO-5093-020-023
LO-5093-020-025
AB-1541754
764761
766415

1 个答案:

答案 0 :(得分:0)

我无法添加评论,因为我简短2分:(因此我不得不将此作为解决方案发布:

尝试制作所有数字字符串。

Dim R As Range
For Each R In Range("Part_Number").Cells
    If IsNumeric(R.FormulaLocal) Then R.FormulaLocal = "'" & R.FormulaLocal
Next

让我知道它是否有效。