• ベストアンサー

Excelのマクロの使い方を教えてください!!!

Excelを勉強中ですが、 例えば、sheet1で、sheet2、sheet3というボタンを作り、 それをクリックすると、sheet2、sheet3が自動的に 開く方法はありますか? 無知なので、細かく教えて頂けると有難いです。 よろしくお願い致します。

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

  • ベストアンサー
  • LINERS
  • ベストアンサー率21% (211/974)
回答No.2

VBA記述がまだわからないのなら ツール→マクロ→新しいマクロの記録→マクロ名に「シート2を開く」とでも書いて→OK(記録開始)→シート2を開き→記録終了 シート1へ戻り→ツール→マクロ→マクロ→シート2を開くを選択→実行 開きませんか? 表示→ツールバー→フォーム でフォームバーが出たら→ボタン→適当なところへマウスでボタンを配置し、→マクロの登録が現れたら→「シート2を開く」を選択してOK ボタンを押すと実行されます。 わからないときは補足下さい。 http://www.katch.ne.jp/~kiyopon/vba/

pekochanyuu3513
質問者

お礼

おりがとうございました!!とっても参考になりました。

その他の回答 (2)

  • Kazupie
  • ベストアンサー率17% (56/323)
回答No.3

事前準備として、Sheet1~3のワークシートを出してください。 ワークシートが足らなければ、「挿入」→「ワークシート」で追加します。 その上で、Sheet2のタブをクリックして「書式」→「シート」→「表示しない」をクリックします。 次にSheet3のタブをクリックして、Sheet2の手順を繰り返します。 「フォーム」ツールバー(出ていなければ、「表示」→「ツールバー」→「フォーム」ででます。)より、「コマンドボタン」アイコンをクリックし、ワークシートのどこでもいいからドラッグして貼り付けます。 次に「コマンドボタン」を右クリックして「マクロの登録」ダイアログボックスが出たら、「新規作成」ボタンをクリックします。 VBE画面になって「ボタン1_Click()」プロシージャ(SUBとEND SUBの間)が作成されるので、下記のコードをコピー、ペーストでSUBとEND SUBの間に貼り付けて下さい。 Sheets("Sheet2").Visible = True Sheets("Sheet3").Visible = True これで、Sheet1上のコマンドボタンをクリックするとSheet2~3が表示されるはずです。 実際には同時に表示されるように見えますが、順番に出ているはずです。 このマクロ意味は、 Sheets("Sheet2").Visible = True ワークシート「Sheet2」の表示方法設定を「True」(はい)にしなさいと言う意味です。 VBA(VBでもそうですが)では、コードを「オブジェクト.プロパティー.メソッド」の順に書きます。 この用語の意味は、過去の私の投稿を見てください。(下記URL) マクロは、キートレースでも作成できます。 「ツール」→「マクロ」→「新しいマクロの記録」で実際のマウスやキーボードの操作を変換してくれます。 これを繰り返し、余分なコードを削除したり条件判断を入れたりして、ワークシートの操作を自動化します。 又、「Functionプロシージャ」を作成して「ユーザー定義関数」(マクロの代わりに計算式を入れる)も作成できます。これは、ワークシート上でも使えます。 さらに、VBAをフォローしている他のアプリケーションを呼び出して操作したり、APL(Windowsとアプリケーションのインターフェース)にアクセスしてExcelが持っていない機能を直接Windowsを操作することによって可能にしたり出来ます。 こんなものでよろしいでしょうか?

参考URL:
http://okweb.jp/kotaeru.php3?q=1170290
pekochanyuu3513
質問者

お礼

おりがとうございました!!とっても参考になりました。

回答No.1

コマンドボタンは作れるのですね? それなら、Sheet1上に作成したコマンドボタンをダブルクリックし、でてきたシートモジュールに Private Sub CommandButton1_Click() Sheets("Sheet2").Select End Sub としてください。 ボタンの表示をSheet2としたいなら、コマンドボタンのプロパティーでCaptionをSheet2とします。

pekochanyuu3513
質問者

お礼

おりがとうございました!!とっても参考になりました。

関連するQ&A