For i = i To nr_commercial
Cells(i, 1) = commercial & RandBetween(1, 6)
Next i大家好-我有上面的,但我不能解决它。它每次都返回一个编译器错误。我很难把一根线加一个公式放在一起。
commercial被定义为字符串
我甚至试过
Cells(i, 1) = commercial & = Randbetween(1,6)它返回错误,表示期望表达式。这两者之间有什么不对的地方吗?
我需要在单元格中输出,例如:
commercial-1
commercial-5
commercial-3发布于 2017-12-05 12:36:18
尝试:
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(还修正了循环索引)
发布于 2017-12-05 12:37:33
尝尝这个
For i = i To nr_commercial
Cells(i, 1) = "commercial-" & Application.WorksheetFunction.RANDBETWEEN(1,6)
Next i编辑:Application.WorksheetFunction.RANDBETWEEN(1,6)是要使用的正确公式
此外,在代码中使用Cells、尝试使用Sheet或Worksheet也是不可取的。
发布于 2017-12-05 14:12:30
我认为您的问题是您使用的是For i = i To nr_commercial,这意味着每次迭代都会更改"For 1=1 to nr_commercial“和"2 =2 to nr_commercial”,这是没有意义的。它应该是For i = 1 to nr_commercial或任何您想要开始的单元格,可能不是在第一个单元格中,因为您可能有标题。
https://stackoverflow.com/questions/47653676
复制相似问题