エクセルVBAで表以外の場所へ移動させない方法
表の中は見ても触ってもいいけど、その他は触らないで!って思うことありませんか?
エクセルファイルを共有して使うと、様々な計算式など見られるぐらいなら構わないのですが、誤って消されてしまったりしたら大変なことになりますよね。
とりっぷぼうる
指定したセル以外はクリック不可・スクロールも制限しちゃおう!
目次
操作可能範囲を指定する
ScrollAreaプロパティを使うと、指定したセルの範囲以外への画面をスクロールして移動することも、セルを選択することも一切できなくなります。
ここでは、ユーザーフォームに配置したコマンドボタンにVBAコードを書いた例です。
セルの操作可能範囲を指定する
このようにVBAコードを書くと、セルA1~D15の範囲内はセルの選択・操作が可能ですが、それ以外にはスクロール移動もセルを選択することもできなくすることができます。
セル操作の可能範囲指定を解除する
指定するからには、解除ができないと困りますよね。
先ほどと違いセルの範囲が「””」(空欄)とすることで指定されていないという事になり、解除されます。
指定した範囲の操作制限・解除する
今度は、コマンドボタン1つに「指定したシートのセル範囲外を選択を制限・解除する」VBAコードを書くことにより、スイッチのオン・オフのような操作ができるようにします。
これで、セルの操作可能範囲を指定したり解除したりできるようになりました。
シートの保護関連VBAコード