如何在VBA中设置特定行范围的自动增量?

时间:2018-07-24 17:06:51

标签: excel

我想在Excel中生成图表。我尝试在VBA中遵循以下代码。

Sub chrt()
'
' chrt Macro
'

'
Dim i As Integer
i = 3

Do While i < 6
    ActiveSheet.Shapes.AddChart.Select
    ActiveChart.ChartType = xlColumnClustered
    ActiveChart.SetSourceData Source:=Sheets("STD 8-A").Range("B1:I1,Bi:Ii")
    i = i + 1
Loop
End Sub

在该程序中,我想对范围使用自动递增(“ B1:I1, Bi:Ii ”) 其中循环中的i值和范围内的i的值可以更改和自动递增。 实际的语法是什么。 在上面的程序循环中正在工作,但范围无法正常工作,因此程序会生成空图表。

1 个答案:

答案 0 :(得分:1)

RangeString的同时,使用“ Bi:Ii”的字面意思是文本“ Bi:Ii”。

您需要先将i(是Integer)转换为字符串并与文本连接:

...blablabla...).Range("B1:I1, B" & trim(str(i)) & ":I" & trim(str(i)))