• 締切済み

セルロックをしてない箇所のセルの色をダブルクリックで変えたい

セルロックをしてない箇所のセルの色をダブルクリックで変えたい 前に、こちらで適切な回答をいただき、大変助かりました。 よろしければ、また助けていただけるととてもありがたいです。 以下のコマンドを入れた後、シートの保護設定をすると、 「実行時エラー'1004'  アプリケーション定義またはオブジェクト定義のエラーです。」 というメッセージで弾かれてしまいます。 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Cancel = True With Target.Interior Select Case .ColorIndex Case 3 .ColorIndex = xlNone Case xlNone .ColorIndex = 33 End Select End With End Sub セルロックしていないセルを、シート保護をかけた状態で、ダブルクリックすると 色が変わるようにするには、このコードをどう書き変えたら良いでしょうか。 かなり困っています。よろしくお願いします。

みんなの回答

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

通常通りにシートに保護を掛けても次のようにすることで正常に機能しますね。 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Cancel = True ActiveSheet.Protect UserInterfaceOnly:=True, Password:="1234" With Target.Interior Select Case .ColorIndex Case 3 .ColorIndex = xlNone Case xlNone .ColorIndex = 33 End Select End With End Sub

fuyu_home
質問者

お礼

早速の回答、ありがとうございました! やってみたら出来ました! 間違えて着色してしまった場合のコマンドは、別途別のマクロで処理するようにしてみます。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

シートの保護をするときに「ユーザーに許可する操作」の中で「セルの書式設定」にチェックをすることで解消されますね。

fuyu_home
質問者

お礼

早速の回答、ありがとうございました! ロックされているセルを洗濯できないようにすることで、間違って着色する、 という動作は避けられるみたいです。 シート保護の設定部分をきっちりチェックしてないという初歩的なミスでした…。

関連するQ&A

専門家に質問してみよう