- ベストアンサー
エクセルのマクロについて教えてください
- エクセルのマクロを使って、全てのシートを一括で保護したり解除したりする方法を教えてください。
- プログラムでの設定以外に、マクロボタンから操作する方法はあるのでしょうか?
- 大文字や小文字、スペースの入力ミスは設定に影響するのか教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
まず前準備として、excel2007以降の場合は、 オフィスボタン ~ 最下部の「excelのオプション」 ~ [開発]タブをリボンに表示する にチェックを付けて下さい。上のタブに[開発]が表示されます。 ちなみに2003以前なら、ツール ~ マクロ です。 次に、開発 or マクロ 画面で、「 マクロの記録 」 をクリック。 すると、マクロに名前を付ける画面になりますので、名づけます。 その際、ショートカットキーは入力してもしなくても可です。 続けて、行いたい処理(全てのシートに対して保護)をした後、同画面で、「記録の終了」をクリックすれば、 今行った処理を自動的にコード化してくれます。 が!(ここから大事) とても美しいコードにはなりませんし、構文も長くなることから、若干ではありますが処理も遅くなります。 ですので、せっかくサンプルコードを頂いているのですから、別に手入力などせずに、そのまま使うことをお勧めします。 単にコピペすればいいだけなのですから。 以下、コピペのやり方。 上記コードの中から Sub macro1() ’全シート一括保護 Dim W As Worksheet For Each W In Worksheets W.Protect ("1234") ’パスワード1234 Next W End Sub 選択して、右クリック ~ コピー 2007以降 開発タブ ~ Visual Basic 2003以前 ツール ~ マクロ ~ ステップイン 画面左の 「 プロジェクト - VBAProject 」 の下に表示されているツリーの適当なところで右クリック 挿入 ~ 標準モジュール 「module1」 というのができるので、Wクリック or 右クリック ~ コード表示 空白のwindowが立ち上がるので、そこで 右クリック ~ ペースト 続いて同じやり方で、標準module2を作成し、 sub macro2() ~ end sub をコピペ で、マクロが実行できます。 がんばって。