【エクセル】便利なマクロの機能を教えます ~全シート保護、保護解除~

ecoslymeです。

エクセル(Excel)のマクロについて抵抗感を持っている人は多いかと思いますが、実は初心者でも簡単に設定することができます

 

データの集計などを行う際、エクセルの全てのシートに保護がかかっており、それを一つずつ保護解除をしなければならない場合があります。

また逆にデータをいじって欲しくない場合は、シート全体もしくは保護したい部分を保護してからエクセルを第3者へ渡したい場合があります。

この記事ではエクセルに対して、全シートに保護をかける保護を解除するというマクロをお教えします。

 

元データと結果

 

エクセルの全シートに保護をかける

それでは、エクセルの全シートに保護をかけるマクロを作成します。
そもそも、マクロをいじるのが初めてという方は以下の記事をご覧下さい。最初に行わなければならない設定があります。
また、作成したマクロの使用方法も記載しています。
関連記事

ecoslymeです。エクセル(Excel)のマクロと聞くと変に抵抗感を持っている人は多いのではないでしょうか?システムに詳しい人でないと無理とか、関数や言語が意味不明とか思う気持ちは分かります。 […]

それでは、「Alt+F11」を押してください。
以下のような画面が出てきますので、「挿入」⇒「標準モジュール」を選択して下さい。

右の枠内に、以下のマクロ文章をコピペして下さい。

Sub 全シートの保護()

Dim sh As Object

On Error Resume Next

For Each sh In Sheets

ActiveWindow.ActiveSheet.Range(“A1”).Select

sh.Protect

Next sh

End Sub

こんな感じです。

これが出来た人は、左上のファイル保存マークでエクセルを保存しましょう。

この時、ファイルの種類は「Excel マクロ有効ブック(*.xlsm)」にしましょう。
ファイル名は「【マクロ】全シート保護、保護解除」とします。

 ※保存画像はWindowsではなく、Macでの画像ですがご了承下さい

これでもう完成です。

エクセルの全シート保護解除を行う

次に、エクセルの全シートの保護解除をするマクロを説明します。
以下のマクロ文章をコピペして下さい。

Sub 全シートの保護解除()

Dim sh As Object

On Error Resume Next

For Each sh In Sheets

sh.Unprotect

ActiveWindow.ActiveSheet.Range(“A1”).Select

ActiveWindow.Zoom = 80

Next sh

End Sub

これを同様に、マクロ設定の画面(Module1)へコピペして下さい。
以下のようになるはずです。

後は保護をかけたい保護解除したいエクセルでマクロを使用すれば思い通りに実行することができます。

 

最後に

 

マクロが全くの初心者でも、Web上に転がっているコードをコピペするだけでマクロを簡単に利用することができるようになってきています。

これを利用しない手はありません。

マクロの利用により、面倒な作業が改善されることが非常に多くあります。

単純な作業が多ければ多いほど、マクロによって作業時間が大幅に削減することができます。

 

この記事を元に、マクロに苦手意識を持っている人がどんどんマクロを利用していくようになって貰えれば幸いです。

 

マクロについてもっと詳しく知りたい人は絶対にこの本が必要です。

購入するとWeb上からPDFをダウンロードできるパスワードが書かれています。(検索が非常に楽)

電子書籍ではなく、本で購入することをオススメします。