麻烦与String + RandBetween()VBA
For i = i To nr_commercial Cells(i, 1) = commercial & RandBetween(1, 6) Next i
大家好 – 我有上述,但我无法解决它。 它每次都会返回一个编译器错误。 我遇到了问题,把一个string加上一个公式。
commercial
被定义为一个string
我甚至尝试过
Cells(i, 1) = commercial & = Randbetween(1,6)
并返回错误,期待expression。 有没有不正确的function之间的兰德?
我需要在像这样的单元格中输出:
commercial-1 commercial-5 commercial-3
尝试:
Application.WorksheetFunction.RANDBETWEEN(1,6)
例如:
Sub qwerty() Dim nr_commercial As Long, commercial As String nr_commercial = 10 commercial = "whatever" For i = 1 To nr_commercial Cells(i, 1) = commercial & Application.WorksheetFunction.RandBetween(1, 6) Next i End Sub
(也固定循环索引)
尝试这个
For i = i To nr_commercial Cells(i, 1) = "commercial-" & Application.WorksheetFunction.RANDBETWEEN(1,6) Next i
编辑: Application.WorksheetFunction.RANDBETWEEN(1,6)
是使用正确的公式
此外,不build议使用Cells
尝试在您的代码中使用Worksheet
Sheet
或Worksheet
。
我认为你的问题是你正在使用For i = i To nr_commercial
这意味着每一次迭代都会改变“For 1 = 1 to nr_commercial”,然后是“2 = 2 to nr_commercial”,这是没有意义的。 它应该是For i = 1 to nr_commercial
或任何您想要开始的单元格,可能不在第一个单元格中,因为您可能有标题。