Vba: 書式付きの行を挿入する方法
VBA で次の構文を使用すると、その上の行と同じ形式の行を挿入できます。
Sub insertRowWithFormatting()
ActiveCell.Offset(1).EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromRightOrAbove
ActiveCell.EntireRow.Copy
ActiveCell.Offset(1).EntireRow.PasteSpecial xlPasteFormats
Application.CutCopyMode = False
End Sub
この特定のマクロは、現在選択されている行のセルとまったく同じ書式設定で、現在選択されているセルの下に行を挿入します。
注: Application.CutCopyMode = False行は、マクロの実行後にカット アンド コピー モードを無効にすることを指定します。
次の例は、この構文を実際に使用する方法を示しています。
例: VBA で書式設定された行を挿入する
さまざまなバスケットボール選手に関する情報を含む次のデータセットが Excel にあるとします。
まったく同じ書式設定で行 2 の下に行を挿入するとします。
これを行うには、次のマクロを作成できます。
Sub insertRowWithFormatting()
ActiveCell.Offset(1).EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromRightOrAbove
ActiveCell.EntireRow.Copy
ActiveCell.Offset(1).EntireRow.PasteSpecial xlPasteFormats
Application.CutCopyMode = False
End Sub
次に、セルA2を選択して、このマクロを実行します。
このマクロを実行すると、次の出力が表示されます。
挿入した新しい行は、セルの色や境界線も含めて、行 2 のセルとまったく同じ形式であることに注意してください。
また、既存のデータセット内の他のすべての行は単にプッシュダウンされているだけであることにも注意してください。
追加リソース
次のチュートリアルでは、VBA で他の一般的なタスクを実行する方法について説明します。
VBA: 最後に使用された行を見つける方法
VBA: 範囲内の行数をカウントする方法
VBA: 使用されている列の数を数える方法