• ベストアンサー

エクセルマクロについて質問です。

複数の行を選択し、その行を一つ上の行に挿入するマクロを教えていただきたいです。 345の行を選択しマクロボタンを押すとあうえおいのように一つ上に上がり、もう一度マクロボタンを押すと、うえおあいとあがっていくようなマクロです。また複数行でない場合も同様に、4の行を選択し、マクロボタンを押すと、あいえうおとあがるようにしていただきたいです。あわせて、一つしたの行に挿入するマクロも教えていただけると助かります。よろしくお願いします。 1あ 2い 3う 4え 5お

質問者が選んだベストアンサー

  • ベストアンサー
  • mar00
  • ベストアンサー率36% (158/430)
回答No.2

Sub Macro1() '上へ移動 Dim myRow1 As Integer, myRow2 As Integer myRow1 = Selection(1).Row myRow2 = Selection(Selection.Count).Row If myRow1 = 1 Then Exit Sub Selection.Cut Rows(myRow1 - 1).Insert Shift:=xlDown Range(Rows(myRow1 - 1), Rows(myRow2 - 1)).Select End Sub Sub Macro2() '下へ移動 Dim myRow1 As Integer, myRow2 As Integer myRow1 = Selection(1).Row myRow2 = Selection(Selection.Count).Row Selection.Cut Rows(myRow2 + 2).Insert Shift:=xlDown Range(Rows(myRow1 + 1), Rows(myRow2 + 1)).Select End Sub ご希望通りの動作をすればよいのですが。

yoshimitsu525
質問者

お礼

回答ありがとうございます。助かりました。

その他の回答 (1)

回答No.1

自動記録の結果を編集すると、このような内容。 Sub Test()  Dim rng As Range  Set rng = Selection  Selection.Cut  rng.Offset(-1, 0).Select  Selection.Insert Shift:=xlDown End Sub

yoshimitsu525
質問者

お礼

回答ありがとうございました。

関連するQ&A

専門家に質問してみよう