• ベストアンサー

エクセルVBA 任意のセルの指定について

流れ的には、 マクロ発動→セルをクリック→選んだセルの行の挿入 ここで悩んでいるのは マクロ発動後にセルを選べるか?という事と、選んだセルの挿入は行で行いたいということ、マクロの構文が思いつかないことの3点です。 なにとぞよろしくお願いいたします。

  • nanny
  • お礼率55% (72/129)

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

  • ベストアンサー
  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.1

こんな感じでしょう。 Sub aaa() Dim r As Range On Error Resume Next  Set r = Application.InputBox("クリック", "セル", Type:=8)  r.EntireRow.Insert End Sub

nanny
質問者

お礼

まさに!! これでぴったり動きました!! ありがとうございます!

その他の回答 (1)

  • popesyu
  • ベストアンサー率36% (1782/4883)
回答No.2

マクロ発動の意味が分かりません。普通はボタンクリックなどのイベントに結ぶかと思います。 ということは セル選択→ボタンクリック で別に問題ないでしょう。 例文:ボタンを押したらその時にアクティブだったセルに行挿入 Private Sub CommandButton1_Click() Selection.Rows.Insert End Sub そのマクロ発動というのがコードの処理中ということであればその場合はマウスクリックもキャッチするのは困難ですので、行を挿入させたい行数なり、セル番地を取得させればよいかと。 例:数字を入力したらその行に挿入 Rows(InputBox("行数を入力")).Insert

nanny
質問者

お礼

まさにマクロ発動=ボタンクリックなんです。 セル選択→ボタンクリックのほうが楽なんですが、このマクロを使用するのが私だけではなくて、 他の人たちからボタンクリック→セル選択じゃなきゃだめって言われちゃったもので;; 下の回答で試させてもらいましたが、ばっちりでした。 ありがとうございました。

関連するQ&A

  • Excel で位置が変動するセルの指定をVBAで作りたいのですが・・・?

     ExcelのVBAはほとんど初心者なのです。  申し訳ございませんが教えていただきたいのです。  ひとつのシートに表が3種類あるのですが、それぞれ違うデータを  貼り付けようとしています。  元の表の形は同じです。3行の表でデータの数によって行が挿入  するようになっています。  1つ目の表は、開始のセルは決まっているので指定は出来るのですが  2つ目・3つ目の表の開始セルがその時々で変わってきます。  その時の、開始セルのマクロを作成したいのですが分からなくて  教えて下さい。  よろしくお願いします。  説明が下手ですみません。    

  • エクセルVBA 指定したセルの行を指定したい

    エクセルVBAで、指定したセルの行をコピーして、コピーしたセルの挿入をしたいです。 どのような文章で、書けばいいでしょうか;; よろしくお願いいたします

  • エクセルVBA

    選択しているセルが1セルの場合は、その行を1行ごと、 例えばB10にセルがあれば、10行めを行コピーして11行めに、行挿入、 選択しているセル範囲が3セルの場合は、そのセルのある3行をコピーして 例えばB10:B13を範囲選択していたら、10~13行めを行コピーして、 14行めに3行まとめて挿入するようなマクロ作るには、 どのように記述したらいいでしょうか? コピー元には、計算式を含むセルがあります。 貼り付け先には、その計算式もコピペされているとベストなんですが・・・

  • VBA マクロを動かさない

    (1)ある行のセルを変更したら動くマクロがあります。  Private Sub Worksheet_Change(ByVal Target As Range) (2)ある行のセルに数値を入れるマクロがあります。  Private Sub CommandButton_Click() (2)のマクロが動くと(1)がその後に発動して上書きをしてしまうようです。 これを発動させないようにスキップするにはどうしたらいいのでしょうか?

  • VBA セルのジャンプ

    教えて下さい。 Excelにて、シート1のA行のある番号セルをクリックすると、シート2の番号一覧の同じ番号のセルにジャンプするというマクロを組みたいのですが、どうすればいいでしょうか?

  • Excel VBA セルの指定方法について

    Excell2013です。 次のような表(一部)があります。   日   項目      額       分類   12 ノート 250 3 この、250を、別表の分類3の列(H列)の12日の行(15行)のセルに、そこにすでに値があれば250との合計値として入力したいのです。 データによって日付も分類も違いますので、マクロで自動的に入力したいのですが、どうもよくわかりません。 このような場合のVBAでの入力先セルの指定のしかたをどうすればよいのかどなたかご教示ください。

  • エクセルVBA

    アクティブ「セル」のある「行」をコピーし、そのアクティブセルの下へ挿入するマクロに、複数「セル」を選択している場合は、複数行を挿入するように追記するには、どうしたらいいでしょうか? Sub Macro1() Rows(1).Copy ActiveCell.EntireRow.Insert Shift:=xlDown Application.CutCopyMode = False ActiveCell.EntireRow.Hidden = False End Sub よろしくお願いします。m(_ _)m

  • エクセル 結合セルの挿入

    結合セルがある場合も、 行や列をクリックして挿入すると、挿入ができて便利ですが、 セルをクリックしての挿入はいちいち、結合を解除してからでないと挿入ができないのでしょうか。 ご回答よろしくお願い致します

  • EXCELでセルの塗りつぶし

    エクセルで任意のセルをクリックしたらセルが塗りつぶしが出来、塗りつぶされているセルをクリックすると、塗りつぶし無しになるようにするには、どうしたらよいでしょう。 教えてください。 マクロでやると、ショートカットキーを押すか、マクロの実行をやらないと出来ないのですが、クリックするだけで出来るようにしたいのです。

  • 現在のセルから

    エクセルでマクロを使って、記録して、自分でいじってるんですが、汎用性を持たせるために、”現在のセルから”という条件で以下のようなマクロを組たいと思っているのですが、絶対位置で記録されてしまうため、うまくいきません。 教えて頂けると幸いです。 1、現在のセルから右に5列、下に5列をコピーして 下6列目に、コピーしたセルを挿入する 2、現在のセルから下に13行目まで1を挿入。同じ列の14行目+7行まで2を挿入。 その後も最後の行(その行以降は全て空白のセルになる行)まで13、7、13、7と13と7を行数を交互に挿入し,それぞれ3、4、5と数字を一つ増やしながら埋めていく方法。 1-13行=1 14-21=2 22-35=3 36-23=4 以下略

専門家に質問してみよう