从字符串中拉出 int 进行连接

pulling int out of string to do concatenation

我正在使用 excel 2013,我正在尝试将一个包含字符串的变量与另一个包含字符串的变量的一部分组合起来。但是,我需要的部分是一个整数,我希望删除前导零。

例如我有

LName = Application.WorksheetFunction.VLookup(OCR, Sheets("Whitelist").Range("Whitelist"), 3, False)

这个变量将是某人的姓氏。 我也有

OCR = Right(Left(UserIn, 3), 2) & Left(Right(UserIn, 11), 9)

这将是个人会员 ID,它类似于 DC000123456。 OCR 的长度始终为 11 个字符,前两个字符始终为字母,后九个字符始终为以未知数量的 0 开头的数字。

我想创建一个名为 concat 的变量,它将是姓氏,然后是 space 以及其 ID 中的数字,前导 0。

我试过了

Concat = Lname &" "&Right(OCR, 9)
Concat = Lname &" "&Cint(Right(OCR, 9))
Concat = Lname &" "&Cstr(Cint(Right(OCR, 9)))

所有这些都给出错误。

我想删除前导零。抱歉忘记包含最终结果示例。

我不知道你是想保留还是删除 ID 前面的零。

鉴于此:

LName = "Matteo"
OCR = "DC000123456"

如果你想保留它们:

Concat = LName & " " & Right(OCR, 9)
Debug.Print Concat
>>> Matteo 000123456

如果你想删除它们:

Concat = LName & " " & CDbl(Right(OCR, 9))
Debug.Print Concat
>>> Matteo 123456

*注意:需要使用函数CDbl,你的CInt会溢出,因为ID号大于Integer

允许的大小