0

我有一个表单,其中有一个组合框和 4 个复选框。我想从组合框和 chechboxes 中插入值,当它被选中时它是真的,而不是它是假的。

当我选中复选框时,应在数据库中插入值 YES,而当我不选中复选框时,它将为 NO。

Private Sub Command12_Click()
Dim strSQL As String
Dim rst As New ADODB.Recordset
Dim myval As String

If Me.Check2 Or Me.Check6 Or Me.Check8 Or Me.Check10 = -1 Then
myval = "Yes"
Else
myval = "No"

strSQL = "INSERT INTO Declaratie (Код_предр, Декларация, Данные_фирмы,   
Список_траспрота, Список_водителей) " & _
         " VALUES ('" & Me.НаимПредпр & "','" & Me.Check2 & "','" & Me.Check6 & "','" 
& Me.Check8 & "','" & Me.Check10 & "')"

Call AttServ(strSQL, rst) 'выполнение запроса
End If
End Sub
4

2 回答 2

1

您可以简单地格式化 YesNo(布尔)控件以获得 Yes 或 No,但这可能不是一个好主意。您最好将 YesNo 存储在 YesNo 字段中,并仅格式化您的表单以显示 Yes 或 No。请注意,下面的代码不适用于 YesNo 数据类型,因为您正在存储文本。

Private Sub Command12_Click()
Dim strSQL As String
Dim rst As New ADODB.Recordset

    strSQL = "INSERT INTO Declaratie (Код_предр, Декларация, Данные_фирмы,   
    Список_траспрота, Список_водителей) " & _
             " VALUES ('" & Me.НаимПредпр & "','" _
             & Format(Me.Check2, "Yes/No") & "','" _
             & Format(Me.Check6, "Yes/No") & "','" 
             & Format(Me.Check8, "Yes/No") & "','" _
             & Format(Me.Check10, "Yes/No") & "')"

    Call AttServ(strSQL, rst) 'выполнение запроса
End Sub
于 2013-03-20T11:48:28.360 回答
0
If Me.Check2.VALUE = 1 Then
myval = "Yes"
Else
myval = "No"
END IF

将此代码添加到每个复选框,因为我知道您不能使用代码使所有复选框或单选按钮执行相同的操作。即使相同,您也必须使用复选框或单选按钮自己的代码

于 2013-03-20T08:31:26.787 回答