エクセルのセルの計算式を隠してシート保護する
エクセルで作った表などを他の人に渡すことありませんか?
そのエクセルファイルには計算式などが入っているセル、見られたくないとか計算式編集・コピーされたくないって思った事ありませんか?
シートの保護設定したら編集や誤って消してしまう事は防げますが、計算式は見られてしまいます。
エクセルVBAを使ってワークシートにあるシート名の欄を非表示にする方法
エクセルVBAを使って作成したファイルを自分だけで使うならば問題ないのですが、複数のスタッフで共有して使っていると、シート名を直接クリックして移動されてしまうと...
そこで、シートの保護設定するVBAコードにたった2行追加して、計算式を非表示にしてシートの保護設定をすると解決します。
目次
計算式を非表示してシート保護
エクセルのセルに入力した計算式を見られないように隠すには、FormulaHiddenプロパティを使います。
そしてシート保護設定をすることにより、「True」に設定すれば非表示となり、「False」に設定すると元に戻り表示します。
こうすると、下の図のように「セルの値を検索範囲の中の何行目にあるか」を調べるMATCH関数の数式バーが空欄になり、何も表示されなくなります。
探したいセルの値が何行目にあるか調べる関数
VLOOKUP関数でうまくいかなかった? だからサイトを探していたらここにたどり着きませんでしたか? 表の中から探したい値を検索する関数といえばVLOOKUP関数ですが、す...
では、ユーザーフォームに配置したコマンドボタンに、シートの保護VBAコードに2行足して書きましょう。
これで計算式を隠してシートの保護ができるようになりました。
とりっぷぼうる
Trueの部分をFalseに変えてProtectの部分をUnprotectにすると、計算式を表示してシートの保護解除できますよ。
計算式の入っているセルの範囲つながりで、表の範囲から空白セルを見つけてまとめて任意の値や「0」を一気にまとめて入力しておくこともできますよ。
空白セルに0を選択範囲まとめて入力
表の中のセル全てにデータが入力されていれば問題ないのですが、時々空白のままってありますよね。 その時にデータを並べ替えたら空白セルが上位になってしまった経験あ...
シートの保護関連VBAコード