vba自动增加一个数字?

时间:2014-10-13 10:14:15

标签: excel vba

我正在尝试使用vba将参考号插入excel中的单元格。我想要一个前缀文字' V0000'然后是从836开始的自动递增数字。

so for each row that gets inserted I will have V0000836
Then V0000837
etc

我的代码的很大一部分创建了一个新行并一个接一个地自动插入数据,但是我只想关注这一行代码,它将值插入到AA列中,而不是发布我的整个代码。我的电子表格。我使用以下,但它每次只给我V00001。有人可以告诉我如何让我的代码去做我想要的。

ws2.Range("AA" & DestRow).Value = "V0000836" & Value + 1

2 个答案:

答案 0 :(得分:1)

考虑一种替代方法,它不会从单元格的值中删除数值(数学)功能。

ws2.Range("AA" & DestRow).numberformat = "\V0000000"
ws2.Range("AA" & DestRow).Value = 836 + 1

如果您需要格式化的(显示的)字母数字标识,您可以像这样检索它。

Dim str as string, num as long
str = ws2.Range("AA" & DestRow).text    '◄ V0000837
num = ws2.Range("AA" & DestRow).value   '◄ 837

答案 1 :(得分:-1)

使用VBA,你可以通过每次循环循环时增加数字,然后将V0000加到前面,如下所示:

Dim i As Integer
Dim cell As Range, rng As Range

Set rng = Range("A1:A10")

i = 836

For Each cell In rng
    cell.Value = "V000" & i
    i = i + 1
Next cell