表題につきましてお力添えを賜りたく投稿いたします。
要件としてはシート内の黄色で塗りつぶされたセル以外を
すべてロック→シートの保護にて編集不可にしたいというものになります。
際して下記のコードまでは用意できるのですが、
(私の理解では)シート内に複数の結合セルがあるため実行してもエラーが出てしまいます。
どなたか良い解決策をご教授いただけますと幸いです。
よろしくお願い申し上げます。
sheetの造り
範囲A1〜Z100を使用して、他の方へ配信するアンケートを作成しておりまして、
回答入力欄のみ黄色の塗りつぶしを行い、他のセルは無色or黄色以外で塗りつぶしの状態となっています。
※結合セルは黄色の回答欄、その他のセル共にまばらに存在しております。
やりたいこと
上記範囲内の黄色セル・黄色結合セルのみ入力を許可したいが
フォームの変更などが頻繁に起こるため、VBAにて一括で黄色以外すべてのセルにロックを行いたい
現状のコード
Sub Test()
Range("A1:Z100").Locked = False
'一旦全てロック解除
Dim c As Range
For Each c In Range("A1:Z100")
If c.Interior.Color = 65535 Then
c.Locked = False
Else
c.Locked = True
End If
Next
'黄色のセルだった場合ロック
End Sub
以上、どうぞよろしくお願い申し上げます。