• ベストアンサー

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

mar00の回答

  • ベストアンサー
  • 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
質問者

お礼

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

関連するQ&A

  • マクロについて質問です。

    行を選択し、マクロボタンを押すと、選択行が一つ上に移動 行を選択し、マクロボタンを押すと、選択行が一つ下に移動 というマクロを教えていただきたいです。よろしくお願いします。

  • Excelマクロ:選択したセルに通し番号を入れたい

    任意のセルを選択している状態で、マクロの実行をすると左上から下へ、一番したへ来たら次の行の一番上から通し番号を入れるというマクロを作りたいのですが、どのようなコードを書けば良いのでしょうか?

  • Excelのマクロで最下行を選択して「一行挿入する」マクロの記述を

    Excelのマクロで最下行を選択して「一行挿入する」マクロの記述を教えてください。 ちなみにA列の一番下の行を選択し、その上に一行入れたいのです。 よろしくお願いします。

  • エクセルのマクロについて

    エクセルで、毎日12行のデータが増えていくシートがあるのですが、集計の都合でどうしても最終行に関数式があり、その式の1行上に毎日「12行挿入」してデータを入れてます。毎日行挿入を何回も繰り返すのは面倒なので、マクロを記録しましたが、挿入する列番号が絶対参照?だったらしく、翌日は変な所に12行挿入してしまいます。マクロで毎日最終行の一つ上に12行挿入する方法をご存知の方、その方法を教えてください。

  • エクセルマクロ

    削除したい行を選択しボタンを押すと行削除をするというマクロを ボタンに入れたんですが 誤って行を選択していない場合、 例えば 特定のセルを選択している時、列を選択しているなどの時には 無限ループ?に入って固まってしまうのです そういった場合にループに入らずに エラー(コメントを用意)を表示したいのです Private Sub CommandButton1_Click() Selection.Delete Shift:=xlUp End Sub

  • Excelマクロ、VBAについて質問です。

    Excelマクロについて質問です。 管理表を作っているのですが、チェックボックスで選択した行の削除ボタンを作りたいと思っています。 ___A____ B____C 1 --- --- --- 2 --- --- --- 3 --- --- --- ・ ・ ・ というような表の先頭にチェックボックスをつくり、チェックを入れた行のみ削除し、 上に詰めるようにしたいと思っています。 上の表で2の行を消したら _A_ B_ C 1 --- --- --- 3 --- --- --- 4 --- --- --- となるような感じです。 どのようなプログラムをつくればいいでしょうか。 アドバイスお願いします。

  • 「新しいマクロの記録」機能を使っての行挿入

    「新しいマクロの記録」機能を使って1行と2行の間に10行の空白行を挿入後、A13のセルを選択というマクロを作りました(マクロ1とします)。このマクロを実行すると1行と2行の間に10行の空白行が挿入された後、A13が選択されます。ここでもう一度、マクロ1を実行すると1行と12行の間にさらに空白行が10行挿入されA13が選択されます。このようになるのは当たり前と言えば当たり前なのですが、2回目にマクロを実行したときに12行と13行の間に10行の空白行が挿入された後、A24が選択されるようにするには、どのようにマクロを記録すればよいのでしょうか?  ようは、10行の空白行を挿入した後、セルを11行下に移動させるというマクロを作りたいのです。VBAの記述方法はほとんど分からないので「新しいマクロの記録」機能を使うことを前提にご教授ください。

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

    エクセルにてマクロを組もうと色々調べているのですが、 どうしてもわからないため教えていただきたいことがあります。 現在、マクロを実行すると固有の文字をアクティブセルに挿入するというマクロを作成しました。 このマクロを少し改造したいのですが、A1とB1に=のものが入っている行の特定の列のセルに固有の文字を挿入するという風にしたいです。 例えば、Aの列にはA1には1、A2には2という風に順に10間での数字が入っていて、 B1には9が入っている場合、C9のセルに固有の文字を挿入するという感じです。 B1を7に変えた場合、C7に固有の文字が挿入されるという感じにしたいです。 質問の仕方が下手でわかりにくいかも知れませんがお知恵をお貸しください。 よろしくお願いします。

  • Excelマクロの質問

    マクロについて質問があります。  数千行のデータがあるのですが、それを一番上から一番下にするときに、フォームで作ったボタンで一番下にもっていきたいのですが、どのように行ったらいいかわかりません。(フォームで作成までできたのですが…)  また、オートフィルタという機能がありますが、一度フィルタをかけるとものをリセットする(フィルタがかかっていない状態)マクロは組めないでしょうか? 分かりにくい質問ですが、分かる人がいましたらよろしくお願いします。

  • エクセルマクロにて

    エクセルマクロにて、ルーレットを作成しました。 Googleでエクセルマクロ ルーレットで検索して一番上に出てくるコードを参考にしました。 クリップアートを挿入すると、ルーレットの動作が著しく重くなってしまいましたが。マクロに影響ってあるんでしょうか? 重たくなると言う感覚的な表現で掴みにくいかとは思いますが、何故クリップアートを複数挿入すると、マクロに影響あるかご存知の方いらっしゃいますか?