2014-09-29 43 views
0

我有一个表单,要求用户在文本框中输入一些信息,然后操纵这些值并将它们输入到表格中的某些VBA代码。可变长度字段的前导零点

其中一个文本框要求输入数字序列号。该序列号值可以是四位或五位数字,并且可以包含一个或多个前导零。例如0001007580463

一旦VBA代码将这个值输入到表中,它会遍历它,增加它并创建另一个条目。这一直重复,直到所有的序列号被添加到表中。我从我的代码中声明为字符串的文本框中获取序列号值,但它仍然会丢弃我的前导零。

+3

显示你的代码。你又有什么问题? – Horaciux 2014-09-29 22:04:16

+0

听起来就像您用来存储序列号的变量或表中的字段是数字类型,而不是字符类型。 – LondonRob 2014-09-29 22:38:05

回答

1

我有类似的问题,使用CStr()强制一个字符串为我修复它。所以,像这样:sMyString = CStr(vUserValue),而不是sMyString = vUserValue。

另外,当您增加数字时,您可能会丢弃零。您可以重新添加它们,如:sMyString = String(5-len(sMyString),“0”)& sMyString其中5是原始位数。

sMyString = String(5-len(sMyString),"0") & sMyString