2016-06-29 6 views
1

Мне нужно проверить, установлен ли флажок activex в моем коде vba, однако, когда я пытаюсь - «Если Checkbox1.Value = True Then», он запрашивает переменную, не определенную. Что мне не хватает?Использование Excel флажок в vba

+0

Is ваш флажок «CheckBox1»? Как насчет 'Sheet1.CheckBox'? Это флажок activeX или флажок управления формой? – JNevill

+0

Элемент управления ActiveX, и я попробовал листок («BalanceSheet»). Checkbox1. Все еще проблема. Это также актуарная табличка. –

+0

И вы уверены, что он называется Checkbox1? Кроме этого, я не вижу ничего плохого в коде. – JNevill

ответ

2

Как насчет:

Sub dural() 
    If ActiveSheet.OLEObjects("CheckBox1").Object.Value = True Then 
     MsgBox "it is checked" 
    End If 
End Sub 

enter image description here

Примечание это для "автономный" ActiveX флажок (не на UserForm)

+0

спасибо, что сделал трюк. –

-1

Try:

If Me.Checkbox1 = True Then 
    'whatever code goes here 
End If 
+0

это Excel не доступ vba - я считаю, мне нужно передать имя листа ... –

+0

'Me' отлично подходит для использования в Excel VBA, однако в этом случае он лишний. Если этот код находится в коде vba рабочего листа, он будет работать. Если код находится в модуле, то 'me' будет ссылаться на модуль. – JNevill

+0

Вы вообще не смотрите на этот форум? - http://www.mrexcel.com/forum/excel-questions/45786-if-clause-visual-basic-applications-look-checkbox-if-its-checked-not.html – JB28

Смежные вопросы