Проверка и снятие флажков в Access - PullRequest
0 голосов
/ 06 марта 2019

У меня есть форма в MS Access с несколькими флажками, которые я хочу использовать, чтобы заполнить одно текстовое поле. Если один из флажков снят, я хочу, чтобы его значение было удалено из текстового поля без удаления других значений. Я новичок в использовании Access и кодирования в VBA (читаю электронные книги последние 3 недели), и хотя я пытался проводить исследования в Интернете, мне было трудно найти правильный код.

Это то, что я имею до сих пор:


Первый найденный код

Private Sub cb_click()
If Me.cb1 = True Then
Me.txtComentarios.Value = "INACTIVO;"
Else
Me.txtComentarios.Value = Null
End If

End Sub

Найден второй код

Private Sub cb2_Click()
If Me.cb2 = -1 Then
Me.[txtComentarios] = [txtComentarios] & "DISCREPANCIA"
Else
Me.[txtComentarios] = ""
End If
Exit Sub

End Sub

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

Ex.

cb1; cb2; CB3

Если cb2 не проверяется и его значение удаляется, у меня должно быть «cb1; cb3», но если я перепроверяю cb2, я должен снова получить «cb1; cb2; cb3».

Я просто надеюсь, что кто-нибудь сможет мне помочь. Заранее спасибо.

Luz

1 Ответ

2 голосов
/ 06 марта 2019

Вам не нужны события для каждого флажка.Просто создайте одну процедуру, которая создает полный текст в зависимости от состояния флажков и помещает этот текст в текстовое поле.Чтобы вызывать эту функцию после каждого нажатия на флажок, установите After Update свойство всех флажков на =MyFunctionToUpdateTextbox вместо [Event Procedure]

Private Function MyFunctionToUpdateTextbox()
    Dim strText As String

    If Me.cb1 = True Then
        strText = strText & "INACTIVO;"
    End If
    If Me.cb2 = True Then
        strText = strText & "DISCREPANCIA;"
    End If
    If Me.cb3 = True Then
        strText = strText & "Text for cb3"
    End If

    Me.txtComentarios = strText
End Function
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...