- 締切済み
EXCELでラジオボタンなどを配置したシートに対して「シートの保護」を
EXCELでラジオボタンなどを配置したシートに対して「シートの保護」をかけてもラジオボタンやコンボボックスは操作できてしまいます。ユーザフォームもロックしたいのですが、どうすれば良いでしょうか。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- Wendy02
- ベストアンサー率57% (3570/6232)
>イメージとしてはラジオやドロップダウンを貼り付けたアンケートを募集して、回収後ロックするといった感じです。 「感じ」というイメージは、こちらには、理解できません。 >一度選択した値を保持したままロックしたいのです。 私のマクロでは、できなかったのですか?マクロを望んでいないとでもいうのでしょうか。 もしそうなら、オプションボタンやドロップダウンに出力したLinkedCell の値自体、シートを保護すれば、オブジェクトをロックしなくても、シート上のデータの書き換えは不可能です。
- Wendy02
- ベストアンサー率57% (3570/6232)
>ラジオボタン Excelは、オプションボタンと言います。 >ユーザフォームもロック 立ち上げなければよいのでは?立ち上げてからですと、マクロ自体を停止しないと、ボタンを押しても、何も出来なくなります。 '// Sub LockingMacro() Dim cntl As Object On Error Resume Next With ActiveSheet If .ProtectContents Then .Unprotect For Each cntl In .Shapes If cntl.Type = msoOLEControlObject Then cntl.DrawingObject.Object.Locked = False ElseIf cntl.Type = msoFormControl Then cntl.DrawingObject.Enabled = True End If Next Else .Protect DrawingObjects:=True, Contents:=True, Scenarios:=True For Each cntl In .Shapes If cntl.Type = msoOLEControlObject Then cntl.DrawingObject.Object.Locked = True ElseIf cntl.Type = msoFormControl Then cntl.DrawingObject.Enabled = False End If Next End If End With End Sub
補足
説明が悪くて申し訳ございません。 ユーザフォームというより、Excelのシート上に直接貼り付けたラジオやドロップダウンなど 一度選択した値を保持したままロックしたいのです。 イメージとしてはラジオやドロップダウンを貼り付けたアンケートを募集して、回収後ロックするといった感じです。