Флажки - это тип элемента управления, предназначенный для одной цели: для обеспечения правильного ввода логических значений.
В Access существует два типа:
2-состояния- может быть проверен или не отмечен, но не Null.Значения: True (проверено) или False (не проверено).В Access и VBA значение True равно -1, а значение False равно 0. Для переносимости в средах, в которых для True используется 1, вы всегда можете проверить значение False или Not False, поскольку False - это значение 0 для всех сред I.знать о.
3 состояния - как 2 состояния, но может быть нулевым.Нажатие на него циклически перебирает True / False / Null.Это для привязки к целочисленному полю, которое допускает Null.Бесполезно с булевым полем, так как оно никогда не может быть нулевым.
Незначительный спор с ответами:
Почти никогда не нужно использоватьСвойство .Value элемента управления доступом, так как это свойство по умолчанию.Эти два значения эквивалентны:
?Me!MyCheckBox.Value
?Me!MyCheckBox
Единственный недостаток здесь заключается в том, что важно соблюдать осторожность, чтобы не создавать неявные ссылки при проверке значения флажка.Вместо этого:
If Me!MyCheckBox Then
... напишите один из следующих параметров:
If (Me!MyCheckBox) Then ' forces evaluation of the control
If Me!MyCheckBox = True Then
If (Me!MyCheckBox = True) Then
If (Me!MyCheckBox = Not False) Then
Аналогично, при написании подпрограмм или функций, которые получают значения из логического элемента управления, всегда объявляйте свой логический типпараметры как ByVal, если вы на самом деле не хотите манипулировать элементом управления.В этом случае тип данных вашего параметра должен быть элементом управления доступом, а не логическим значением.Все остальное рискует неявными ссылками.
И наконец, если вы установите значение флажка в коде, вы можете фактически установить его на любое число, не только 0 и -1, но и любое другое число.0 считается истиной (потому что это не ложь).Хотя вы можете использовать такие вещи в HTML-форме, это неправильный дизайн пользовательского интерфейса для приложения Access, поскольку у пользователя нет возможности увидеть, какое значение фактически хранится в элементе управления, что противоречит целивыбрав его для редактирования ваших данных.