多分私はこれをあまりにも待っていましたが、Excelのワークシートをコピーするマクロがあります。明らかにVBAコピーシートマクロと数式r1c1を使用
Sub Macro4()
'
' Macro4 Macro
'
' Keyboard Shortcut: Ctrl+a
'
Sheets("<Null>").Select
ActiveSheet.Buttons.Add(541.5, 97.5, 95.25, 43.5).Select
ActiveSheet.Buttons.Add(541.5, 169.5, 94.5, 42.75).Select
Sheets("<Null>").Copy After:=Sheets(3)
ActiveCell.FormulaR1C1 = "='Dividing Walls Only'!RC[-2]"
Range("C4").Select
Sheets("<Null> (2)").Select
ActiveSheet.Buttons.Add(541.5, 97.5, 95.25, 43.5).Select
ActiveSheet.Buttons.Add(541.5, 169.5, 95.25, 42.75).Select
Sheets("<Null> (2)").Copy After:=Sheets(4)
Range("C3").Select
ActiveCell.FormulaR1C1 = "='Dividing Walls Only'!R[1]C[-2]"
Range("C4").Select
Sheets("<Null> (3)").Select
ActiveSheet.Buttons.Add(541.5, 97.5, 95.25, 43.5).Select
ActiveSheet.Buttons.Add(541.5, 169.5, 95.25, 42.75).Select
Sheets("<Null> (3)").Copy After:=Sheets(5)
Range("C3").Select
ActiveCell.FormulaR1C1 = "='Dividing Walls Only'!R[2]C[-2]"
Range("C4").Select
End Sub
が、これは180回を繰り返すことは愚かなことでしょう:私は何もやろうとしていることはループ(この記録したマクロからわずかR1C1式)にこれを含めています。
Sub CopySheet()
Call OptimizeCode_Begin
Dim x As Integer
x = InputBox("Enter number of times to copy active sheet")
For numtimes = 1 To x
'Loop by using x as the index number to make x number copies
ActiveWorkbook.ActiveSheet.Copy _
After:=ActiveWorkbook.Sheets(3)
'Put copies in front of Sheet3
'Might need to move the new sheets
Next
Call OptimizeCode_End
End Sub
私がやりたい何を自動的に入力することから私を続けるだろう、各シートにR1C1式を進めるために、ネストされたループまたは何かを取り入れているのいずれか:これは私が既に持っているマクロはコピー用紙でありますすべてのシートがコピーされた後で参照しようとしているセル。どんな助けもありがとう。
ありがとうございます!
ジャスティン
最初のビットを変更してワークシートの入力をしてループ内で呼び出すのはなぜですか?私はあなたが何をしようとしているのか理解できないかもしれません。 – Liss
@ジャスティン・ビーチレイ新しいコピーシートごとにセル「C4」の数式をどのように進めるかわからない、私の答えは以下のとおりです –