
A1:B7までの表があるとします。A列B列に入力して行きます。A列入力後にB列(同行)に何かしら値が入ったら。(例えばB5)A1:B5に入力できないようにしたいのですが、その場合にどのように記述すれば良いのでしょうか。考えているのはA1:B7のロックを解除しておいてシートを保護しておく、そしてB列に入ればそこまでの範囲にロックをかけると言う感じですが。保護解除のパスワードは123とします。
Sub ロックをかける()
ActiveSheet.Unprotect"123"
Range("A1:XX).Locked=True
ActiveSheet.Protect"123"
End Sub としたのですが、XXのところが上手くできません。
Range("B8").End(xlup)をいれて見るとエラーが出ます。そこで変数(String型)を作ってこの文でその該当セルの値を代入し、XXのところに変数を置いてみてもやはりエラーが出ます。
この表は本来もう少し大きな表で、時間外勤務を管理しようとしていて上席者がB列に承認した印に値をいれて実行するとそれまでの値が改ざんできないようにすると言うのが目的なのです。
まだまだVBAに関して勉強不足だと思いますがよろしくお願いします。
No.2ベストアンサー
- 回答日時:
Range("A1:" & Range("B8").End(xlUp).Address).Locked = True
じゃだめですか?
Range("B8").End(xlUp).Address
の部分は変数置き換えでもいいと思うのですが
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
rowsとcolsの意味
-
4月~3月まで12カ月横に並んだ...
-
条件より変更するようにしたい ...
-
VBAのFind関数で結合セルを検索...
-
Cellsのかっこの中はどっちが行...
-
グリッドの列の最大値を求めたい。
-
VBAの初心者なのですが、「並び...
-
VBA 値と一致した行の一部の列...
-
【VBA】2つのシートの値を比較...
-
Excel UserForm の表示位置
-
エクセルでシートを保護すると...
-
罫線の斜線を自動で引くマクロ
-
あああ..ああい..ああう とい...
-
「段」と「行」の違いがよくわ...
-
Excel VBAでのWorksheet_Change...
-
EXCELのダイアログシートって、...
-
DataGridViewでグリッド内に線...
-
Excelのフィルター後の一番上の...
-
vba マージエリアの行数を非表...
-
【エクセル】フリーワード検索...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA sum ワークシートChange
-
Excelで、あるセルの値に応じて...
-
Worksheets メソッドは失敗しま...
-
URLのリンク切れをマクロを使っ...
-
【VBA】2つのシートの値を比較...
-
rowsとcolsの意味
-
Cellsのかっこの中はどっちが行...
-
vba 2つの条件が一致したら...
-
IIF関数の使い方
-
B列の最終行までA列をオート...
-
VBAでのリスト不一致抽出について
-
複数の列の値を結合して別の列...
-
VBA 何かしら文字が入っていたら
-
VBAのFind関数で結合セルを検索...
-
エクセル 2つの表の並べ替え
-
DataGridViewに空白がある場合...
-
文字列の結合を空白行まで実行
-
データグリッドビューの一番最...
-
【VBA】複数行あるカンマ区切り...
-
ExcelVBAでテキストルーレット...
おすすめ情報