从A列生成字母数字ID

时间:2015-11-10 17:09:19

标签: excel vba excel-vba

我有一个包含宏的Excel工作簿。工作簿包含单个工作表,其中每行包含有关特定资产的信息;每行以资产ID开头。资产ID由字母“A”后跟五个数字组成。每当将新资产添加到工作表时,新数据行中都应包含唯一的资产ID。例如,最后一行的资产ID为“A0006”。我需要一个用vb编写的函数,当调用它时将读取资产id列(列“A”)中的最后一个值,将该值递增1,并返回字母数字字符串。如果现在调用该函数,它应返回值“A0007”。

1 个答案:

答案 0 :(得分:1)

Sub New_ID()

    Dim rLastValue As Range
    Dim alpha As String
    Dim numeric As Long

    Set rLastValue = Sheet1.Range("A1").End(xlDown)
    alpha = Left(rLastValue, 1)
    numeric = Val(Replace(rLastValue, alpha, "")) + 1

    rLastValue.Offset(1) = alpha & Format(numeric, "0000")

End Sub