combobox2.enable = True
コンボボックス1に変更がある場合に設定すると、上記のエラーメッセージが表示されました。
Private Sub ComboBox1_Change()
If ComboBox1.Value = "One Session" Then
ComboBox2.Enabled = True
End If
End Sub
誰かが何がうまくいかなかったのか教えてもらえますか? ありがとう
私はこの問題に直面し続けており、私の解決策は前の 2 つの回答とは少し異なります。私の場合、ワークシートだけでなくオブジェクトもロックされています。私の解決策は、ワークシートの保護を解除し、エラーの原因となっているオブジェクトを選択し、そのプロパティに移動して、[ロック] のチェックを外すことです。次に、ワークシートを再保護して保存します。
コンボボックスがワークシートにあると思います。
このエラーが発生する主な理由は 2 つあります。
ActiveX コントロールが無効になっています。あなたはこれを見たいかもしれませんまたは
ワークシートは保護されています。ワークシートが保護されている場合、それを処理するには 2 つの方法があります
方法 1
Private Sub ComboBox1_Change()
ActiveSheet.Unprotect "YOUR PASSWORD"
If ComboBox1.Value = "One Session" Then
ComboBox2.Enabled = True
End If
ActiveSheet.Protect "YOUR PASSWORD"
End Sub
また
方法 2
これはUserInterfaceOnly:=True
、マクロを使用してのみシートを変更できるようにするために使用します
ActiveSheet.Protect Password:="YOUR PASSWORD", _
DrawingObjects:=True, Contents:=True, _
Scenarios:=True, UserInterfaceOnly:=True