Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ms access 在Access中,如果表格显示单元格,则显示其他内容_Ms Access_Vba - Fatal编程技术网

Ms access 在Access中,如果表格显示单元格,则显示其他内容

Ms access 在Access中,如果表格显示单元格,则显示其他内容,ms-access,vba,Ms Access,Vba,我正在access中创建一个数据库。我有一个组合框,有37个项目可供选择的形式。当用户填写表单时,数据将很好地进入表中,但它不会显示组合框中的项目,而是显示id号,而不是组合框中的选项。此组合从包含两列的表中提取数据。一个是access让您输入的ID,两个是清理类型,这是组合中的选项。我想知道是否有一种方法可以在VBA中创建某种if/then语句,或者是否有一个函数可以按原样显示列中的信息,而不是与之关联的ID号。这是附加到“保存数据”按钮的代码: Private Sub Command33_C

我正在access中创建一个数据库。我有一个组合框,有37个项目可供选择的形式。当用户填写表单时,数据将很好地进入表中,但它不会显示组合框中的项目,而是显示id号,而不是组合框中的选项。此组合从包含两列的表中提取数据。一个是access让您输入的ID,两个是清理类型,这是组合中的选项。我想知道是否有一种方法可以在VBA中创建某种if/then语句,或者是否有一个函数可以按原样显示列中的信息,而不是与之关联的ID号。这是附加到“保存数据”按钮的代码:

Private Sub Command33_Click()
 Dim strSQL As String
 Dim strName As String
 Dim varItem As Variant

DoCmd.SetWarnings False

    strSQL = "INSERT INTO CleaningLog(Name1, Date1, Shift, Cleaning, Comments) VALUES ('" & Me!Text12 & "', '" & Me!Text15 & "', '" & Me!Combo25 & "', '" & Me!Combo19 & "', '" & Me!Text30 & "');"
    DoCmd.RunSQL (strSQL)

DoCmd.SetWarnings True

Me.Refresh

End Sub

除了Combo19中的“清理”之外,所有数据插入都很好。这是唯一一个从表中提取数据的方法。谢谢

GUI中有组合框的设置,您可以设置要保存在数据库中的列和要显示的列

请注意“列计数”和“列宽”属性。Column count是组合框应包含的数据列数。在您的情况下,应该有两个ID和名称

接下来请参见“列宽”属性。这将设置每列数据的宽度。请注意,在我的示例中,第一列的宽度为0”。这意味着当用户打开组合框时,它将不可见,并且只能看到第二列。但是Access自动知道第一列存储对象的值,并且是存储在表中的值