2014-02-20 2 views
0

У меня есть несколько флажков в моей форме, которые при выборе отключить определенные поля.Отключить поле с нулевым значением

Однако, когда значение поля, которое нужно отключить, имеет значение Null или EmptyString, поле не будет отключено, пока я не укажу значение. Ввод значения приведет к отключению поля, когда он потеряет фокус.

Я использую код VBA: ..

Me.columnName.Enabled = False 

Можно ли отключить поле, которое является нулевым или EmptyString?

Edit: Refactored Пример кода

Private Sub Checkbox_Click() 

If Checkbox.Value = True Then 

    Me.field1 = "" 
    Me.field2 = "" 
    Me.field1.Enabled = False 
    Me.field2.Enabled = False 

End If 

End Sub

+1

Я думаю, что мы должны видеть больше кода. Я не могу визуализировать это –

+1

В идеале, не используйте columnName, используйте controlName. Например, ваша таблица может содержать Address1, текстовое поле должно быть, скажем, txtAddress1 – Fionnuala

+0

. Я добавил несколько примеров кода, чтобы дать больше идеи. –

ответ

0

Null не то же самое, как ""

Me.field1 & "" = "" 

Или покрывают пустые строки и пространства заполнены строки с

Trim(Me.field1 & "") = "" 

Тем не менее, маловероятно, что поле в Access является «», если вы не специально позволили ему, так:

If IsNull(Me.Field1) Then 

Или

Me.field1.Enabled = Not IsNull(Me.Field1) 
Me.field1.Enabled = IsNull(Me.Field1) 
Me.field1.Enabled = Not Me.Checkbox 
+0

Поле с проверкой: isNull (Me.field) Тогда msgbox "field is null" End If. Поле определенно "", а не Null. Все еще не может отключить поле, если его пустой –

+0

Вы прошли через код? – Fionnuala

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