• ベストアンサー

エクセルVBA シートを選択した時にマクロを起動したい

いつもお世話なります。 ファイル内に、Sheet1~5の5つのシートがあり、それぞれのシートを選択した時に、別々のマクロを起動させたいのですが、どのように書けば良いのでしょうか? 宜しくお願い致します。

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

  • ベストアンサー
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.1

それぞれのシートタブを右クリックして、出てきたメニューから「コードの表示」を選択。 VBE画面が開くので、 Private Sub Worksheet_Activate() 'ここに記述 End Sub

7-samurai
質問者

お礼

お礼が遅くなりまして申し訳ございません。 ありがとうございました。おかげさまで問題解決しました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • EXCEL の複数シートを選択するVBA

    お世話になります。 複数のシートがあるEXCELファイルで、特定のセル(A1)に「オリンピック」と入力れているワークシートをすべて選択するマクロを組みたいのです。ご教示よろしくお願い致します。

  • EXCEL 選択したシートのデータをまとめるマクロ

    EXCEL2010で質問です。 シート1~10まであったとします。 そのうち、シート3~5を選択しておいてマクロを実行すると、新しいシートにシート3~5のデータをまとめるマクロを教えて下さい。 ファイルの全てのシートをまとめるマクロを見付けたので何とかしようとしたのですが、全然歯が立たずで(>_<) すみません。よろしくお願いいたします。

  • Excelの起動が遅いです。

    度々失礼します。 タイトルの通りExcelの起動がかなり遅いです。 何とかしてせめて数秒以内に起動するにはどの様な事をしたらいいのでしょうか? 新規Excelファイルを作成(起動)すると即開きます。 マクロを組んだExcelファイルを起動すると起動まで30秒以上かかります。 やってみた事 マクロが含まれているので遅いと思い、すべてのマクロを削除しました。(コードを全選択してDeleteキー) 保存をして再度開くとマクロを実行しますか?のメニューが出てきました。 マクロを全部消したので起動しないを選択してファイルを開いてもマクロが含まれている時と同じ位遅く起動します。 次に1シートを削除して保存、起動を繰り返してみました。 そうしたところ特定のシートがある場合(1シート)起動が遅い事が分かりました。 その1シートのみを残した状態で保存をして、シートの中身を消して上書き保存をしました。(全選択してDelete) 中身が無く1シートのみのExcelファイルを開いたのですが、マクロの起動を聞かれ起動してみましたがかなり時間がかかります。(起動しないを選択)

  • エクセルVBAで条件に適合したシートを全て選択にするには

    いつもお世話になります。 エクセルでシート数が100枚あり各シートのA1には0か1かの値が入っているとします。 その中で、A1の値が1のシートをすべて選択するにはどのようなマクロを組めばいいのでしょうか?

  • シートを選択するマクロ

    いつもお世話になってます。 マクロ初心者です。 製作工程の仕様書のテンプレートを作成しているところです。 各項目に「有・無」とチェックボックスがあり、「有」を選択すると該当のシートに飛ぶようにしたいです。 (例えば、写真撮影を有にすると写真撮影の要領書のシートにとぶ…みたいな) Private Sub チェックボックス_Click() Sub ワークシートを選択() Worksheets("Sheet2").Select End Sub 上記のようなのを入れてみましたが上手くいきません。 どのようにすれば出来るでしょうか? 教えて下さい。よろしくお願いします。

  • EXCELのシート名を指定してそのシートを開くマクロ、VBA?

    いつもお世話になります。 次々とシートを追加していくブックがあります。 Sheet1にマクロボタンを作成して、例えばSheet1のA1に「5」と入力すればSheet5が、「8」と入力すればSheet8が、開くようにしたいのですがそのようなマクロは可能でしょうか? (シートのハイパーリンクを利用した目次ではありません。) 初心者ですがよろしくお願いします。

  • エクセルを閉じる時にマクロを実行する

    お世話になります。 エクセルのファイルを閉じる時にあるマクロを実行したいと思っています。 右上の×印をクリック、Alt+F4、Alt+F→X などエクセルを閉じようとしたときに自動的にマクロを動かすことが出来るでしょうか? マクロ自体は、あるシート全体をコピー→外のシートに形式を選択して貼り付け(値) というごく簡単なものです。 また参考までにエクセルファイルを開いたときにマクロを実行というものがあれば教えてください。 よろしくお願いします。

  • エクセルのマクロでシートの選択について

    よろしくお願いします WinXP SP3でEXCEL 2003を使用しています ブック名がtest.xls シートが("目次", "1", "2", "3", "4", "5") とあります ここでは仮に"5"までシートがありますが本来は変数であり、n + 1のように扱いたいです 以下のマクロで"目次"以外の全てのシートを選択しました ~~~~~ Sub Macro1() Dim i As Integer i = 2 Sheets(i).Select For i = i To 6 Sheets(i).Select False Next i End Sub ~~~~~ このマクロですとArrayを使わずとも、"目次"以外のシートを選択できますが For i = i To 6 の6を7以上にするとエラー終了します そこで以下の条件にてシートの選択を行いたいのですが方法がわからず困っております 1・シートの数が多くても"目次"以外のシートを全て選択したいです 2・iがシートの数を超えた場合はエラー終了せず、マクロを終了させたいです 3・Sheets(Array( "1", "2", "3", "4", "5")).Select のようなマクロは組みたくないです 大変恐縮ですが、教えていただけますでしょうか できればマクロをVBEにコピー&ペーストするだけで実行できるような 状態にしていただきますと非常に幸いです 何卒、よろしくお願いいたします

  • Excel起動時にマクロの「有効」「無効」を酔要求する画面を無くしたいです

    お世話になります。 一度、マクロを作成したエクセルファイルを起動すると、 マクロの「有効」「無効」を選択する画面が出てきます。 既に、そのファイルで作成したマクロは必要性がなくなり 「ツール」→「マクロ」→「マクロ」から 作成したマクロを削除しても 上記の選択を要求する画面が表示されます。 これは、どのようにしたら表示されなくなるのでしょうか? 宜しくお願い致します

  • Excel VBAで選択したシートの表を一つのシートに転記する方法

    こんばんは。 Excel VBAで、 複数のシートを選択した状態で、 マクロを実行すると、最後のシートに、選択したシートの表が 転記され、1つのシートにまとまる便利なマクロが組めないでしょうか。 よく全てのシートを1つのシートにまとめるのは見るのですが、 選択した複数のシートの名前を書き出す方法がわかりません。 良い方法をご存知でしたら教えていただけないでしょか。 宜しくお願い致します。

専門家に質問してみよう