• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルのマクロについて教えてください。)

エクセルのマクロについて教えてください

このQ&Aのポイント
  • エクセルのマクロを使って、全てのシートを一括で保護したり解除したりする方法を教えてください。
  • プログラムでの設定以外に、マクロボタンから操作する方法はあるのでしょうか?
  • 大文字や小文字、スペースの入力ミスは設定に影響するのか教えてください。

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

  • ベストアンサー
  • classical
  • ベストアンサー率29% (14/47)
回答No.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  をコピペ  で、マクロが実行できます。  がんばって。

関連するQ&A