2016-10-05 7 views
1

Excel 2010のブックに「MainSheet」という名前のシートがあります。Excel 2010でVBAによるコントロールの表示/非表示を切り替えるのは正しいですか?

このシートには、「OptionButton1」という名前のActiveXコントロールが含まれています。セルの値「C18」が「2」の場合、このコントロールは非表示にする必要があります。

私は以下のコードを書いたが動作しません。

►もっと質問:フォームコントロールのラジオボタンのように3つの異なる値を持つ1つのセルに関連する3つのactiveX(ラジオボタン)を持つことはできますか?

アドバイスありがとうございます。あなたのActiveX OptionButtonが "OptionButton1を" という名前と仮定すると:)

Sub MS_Method() 

If Range("C18").Value = 2 Then 

    ActiveSheet.MainSheet("OptionButton1").Visible = False 

ElseIf Range("C18").Value = 1 Then 

    ActiveSheet.MainSheet("OptionButton1").Visible = True 

End If 

End Sub 
+0

'ActiveSheet.MainSheet'何ですか? 'MainSheet'は定義されており、Wroksheetとして設定されていますか? –

+0

このワークブックの上記ワークシートのデフォルトの「Sheet1」名を「MainSheet」に変更しました。 – Kasra

答えて

0

、以下のコード(テスト)動作します:

Option Explicit 

Sub MS_Method() 

Dim Sht     As Worksheet 

' modify "MainSheet" to your sheet name (where you have your OptionButton) 
Set Sht = ThisWorkbook.Sheets("MainSheet") 

If Range("C18").Value = 2 Then 
    Sht.OLEObjects("OptionButton1").Visible = False 
ElseIf Range("C18").Value = 1 Then 
    Sht.OLEObjects("OptionButton1").Visible = True 
End If 

End Sub 
+0

ありがとう:) ,,,それは仕事:) – Kasra

+0

質問:3つの異なる値(1または2または3)を持つ1つのセルに関連する3つのactiveX(ラジオボタン)をフォームコントロールのラジオボタンのように持つことはできますか? – Kasra

+0

@カスラそれについては、それを試したことがないか分からない。更新されたコードで新しい質問を投稿することができます。これを返信としてマークしてください –

関連する問題