使用input框设置循环将运行多less次

我有一个代码,将数字列中的空格,以便每个组的6个数字之间有2个空格,从工作表的顶部开始。 在6个小组之后可以有5个小组,这些小组之间需要3个空格。 6组总是出现在5组之上。我想要一个代码,询问多less个6的组,然后询问多less个5的组,然后放入相关的间隔。

Sub MacroMan() Dim x As Integer x = 8 For i = 1 To CInt(InputBox("Run this many times:")) 'Range("H2").Paste Application.CutCopyMode = False Range("H&x:H&x+1").Insert Shift:=xlDown 'Range("H2:H110").Copy x = x + 8 Next End Sub I've got the code to run now, but I get the following error. Run-time error '1004' Method 'Range of object'_'Global'failed 

您可以询问用户input的内容,并将答案存储在一个string中。 然后将string转换为整数,并用它来确定循环的数量。

 sub AskUser dim Answer as string dim i as integer dim Number as integer Answer = Inputbox("Your text here") Number = CInt(Answer) 'Note this will throw an error if you enter something that's not a numbeer for i = 1 to Number 'code next i End sub 

这应该做相同的事情,你指定的次数。


重要提示:由于执行的代码无法撤销,因此请始终在数据副本上运行未经testing的代码!


 Sub SO() Dim x As Integer, i As Integer x = 8 Application.CutCopyMode = False For i = 1 To CInt(InputBox("Run this many times:")) Range("H" & x & ":H" & x + 1).Insert Shift:=xlDown x = x + 8 Next End Sub