我有一个名为“Testfall-Input-Vorschlag”的输入表,我们必须从第7(J)列第一行的单元格中选择一个值,并选择一个值,例如“ARB13”我想填写选中它的列。列的填充是随机值。有一个名为“Admin”的Sheet,其值存储在A:ZZ列的单元格中。现在我在“Testfall”中-Input-Vorschlag“表格我希望按顺序填写列的单元格。这意味着例如对于单元格(11,7)我想从单元格(12,7)的”Admin“中的A列生成随机值该值必须来自“Admin”中的B列,对于单元格(13,7),该值来自“Admin”中的C列,依此类推。所以我一直在尝试,我已经提出了这个代码
Sub ARB13()
Dim col As Integer
For i = 11 To 382
For j = 7 To 1000
If Sheets("Testfall-Input_Vorschlag").Cells(1, j) = "ARB13" Then
col = 0
col = col + 1
LB = 2
UB = Sheets("Admin").Range("col" & Rows.Count).End(xlUp).Row
Cells(i, j).Select
ActiveCell.FormulaR1C1 = Sheets("Admin").Range("Y" & Int((UB - LB + 1) * Rnd + LB))
End If
Next j
Next i
End Sub
如何更新每个i的col值。这意味着每一个我需要的col值增加1.我在哪里错了?
答案 0 :(得分:0)
在开始第一个循环之前定义col
,并且不要将col = col + 1
放在For j = 7 to 1000
循环中。否则col
将为每j
而不是每i
增加Sub ARB13()
Dim col as Long
Dim i as Long
Dim j as Long
col = 0
For i = 11 To 382
For j = 7 to 1000
LB = 2
UB = Sheets("Admin").Cells(Rows.count, col).End(xlUp).row
Cells(i, j).Select
ActiveCell.FormulaR1C1 = Sheets("Admin").Range("Y" & Int((UB - LB + 1) * Rnd + LB))
Next j
col = col +1
Next i
End Sub
。像这样:
:%s/#//gc