Xの行を追加するために必要なスプレッドシートがあります。以下のコードは私が現在持っているものです。私は、私は別の行の量が必要なたびに、このマクロを変更する必要があります。Excelのセル内の数値に基づいてコードを繰り返す方法は?
このマクロを書くことで、Xの行数を生成できるかどうか、XはユーザーがセルA1に入力する数字です。
したがって、どのコードをCell A1の読み込みに使用できますか?次に、コードをループして、A10 X回の連続で行を追加するにはどうしたらいいですか?
Sub Insert_specific_rows()
Dim CurrentSheet As Object
For Each CurrentSheet In ActiveWindow.SelectedSheets
CurrentSheet.Range("A10:A138").EntireRow.Insert
Next CurrentSheet
End Sub
さらに、それは新しい行を追加するとき、それはまた、Z9を通じてB9から下のすべてのセルをコピーをもたらすように、このコードを書き換える方法はありますか?すべてのあなたの助けにSOLUTIONで編集
----
ので、おかげで、ここで私が今持っているコードです。しかし、私はこれを50,000行まで行う必要があります。このコードは、行ごとに表示されます。これを改善する方法に関する提案はありますか?
多分、すべての行を追加し、数式を1つコピーダウンする必要がありますか?
更新式:
Sub All_Lines_Add_Rows_Macro()
Dim CurrentSheet As Object
Dim numRows As Long
For Each CurrentSheet In ActiveWindow.SelectedSheets
numRows = InputBox("How many lines is your CDM?", "Rows to Add") - 1
Range("A10:Z10").ClearContents
For i = 1 To numRows
CurrentSheet.Range("A10").EntireRow.Insert
CurrentSheet.Range("AA9:EY9").Copy
CurrentSheet.Range("AA10").PasteSpecial Paste:=xlPasteAll
Application.CutCopyMode = False
Next i
Rows(9).EntireRow.Delete
Next CurrentSheet
End Subの
私は 'のI' ループに追加ラインを残すと思います。そして、すべての行が追加されたら、どうすればA10から(A10 + X - 1行)にコピーできますか?
usedrangeを参照して、入力してください –
数字を取得するために「InputBox」を追加することができます。 http://www.exceltrick.com/formulas_macros/vba-inputbox/ –