好的所以我想让这个更容易理解,以便我得到更好的帮助。 这是我目前从录制的宏中获得的代码。 这是一次迭代,我需要153.它的作用:1。清除B2并将格式设置为一般,因为它在每次迭代后自动更改为数字。 2.纸张NB装载书单元格R [4] C [-1]被引用并粘贴到纸张最大安培单元格B2中。 3.按下计算工作表按钮。 4.将纸张Max Amps单元格B6和B7中的值复制并粘贴到纸张NB Load Book单元格B5和C5中。
例如,下一次迭代将使用工作表NB装订簿单元格R [5] C [-1]并进入相同位置并复制相同的单元格并将其作为编号粘贴到工作表NB装载簿单元格B6和C6中。 需要这一直到第153行......所以直到R [152] C [-1]。
Sub Macro10()
Sheets("Max Amps").Select
Range("B1").Select
Selection.ClearContents
Selection.NumberFormat = "General"
Range("B1").Select
ActiveCell.FormulaR1C1 = "='NB Load Book'!R[4]C[-1]"
Range("B2").Select
ActiveSheet.Calculate
Range("B6").Select
Selection.Copy
Sheets("NB Load Book").Select
Range("B5").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Max Amps").Select
Range("B7").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("NB Load Book").Select
Range("C5").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
我再一次知道这很乱,但我是初学者。如何才能将此代码应用于153次迭代而无需全部输入?谢谢您的帮助。
答案 0 :(得分:0)
您的代码上方的描述与您录制的宏不一致,其中代码显示副本&不同于您描述的不同细胞的糊状物。
无论如何,下面应该这样做:
Sub Macro10()
myRCval = 4
myBval = 5
myCval = 5
For i = 1 To 153
ThisWorkbook.Worksheets("Max Amps").Range("B1").ClearContents
ThisWorkbook.Worksheets("Max Amps").Range("B1").NumberFormat = "General"
ThisWorkbook.Worksheets("Max Amps").Range("B1").Value = "='NB Load Book'!R[" & myRCval & "]C[-1]"
ThisWorkbook.Worksheets("Max Amps").Calculate
ThisWorkbook.Worksheets("Max Amps").Range("B6").Copy
ThisWorkbook.Worksheets("NB Load Book").Range("B" & myBval).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ThisWorkbook.Worksheets("Max Amps").Range("B7").Copy
ThisWorkbook.Worksheets("NB Load Book").Range("C" & myCval).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
myRCval = myRCval + 1
myBval = myBval + 1
myCval = myCval + 1
Next i
Application.CutCopyMode = False
MsgBox "Done"
End Sub
您可以根据需要修改变量。