2个不同的使用VBA代码查询相同的文本框

Posted

技术标签:

【中文标题】2个不同的使用VBA代码查询相同的文本框【英文标题】:2 different queries same TextBoxes with VBA code 【发布时间】:2015-07-02 10:32:48 【问题描述】:

是否可以将带有列的查询结果放在带有 sql 代码的文本框中?

文本字段已有查询,但当“texto689”不为 0 时,我希望系统根据辅助查询预先填充这些字段。

到目前为止我所拥有的是:

' TEST MULTI QUERY
Private Sub Texto689_LostFocus ()
If Not IsNull (Me.Texto689) Then
DoCmd.OpenQuery "CONSULTA DE VFV INSERIR PEÇAS"

'Write the result of the query in the textbox specifies
Me.Combinação65 SELECT [CONSULTA DE VFV INSERIR PEÇAS] .MARCA FROM [CONSULTA DE VFV INSERIR PEÇAS] (is giving error)

End If
End Sub

这适用于我不需要以前的数据时。我用它把汽车插入系统。它确实结合了品牌和型号,例如。如果您选择 audi 仅显示 audi 模型。没关系!

'宏代码字段标记 字段标记是来源TBLMARCA.MARCA SELECT FROM TBLMARCA;

'Source code macro field model
SELECT TBLMODELO.MODELO, TBLMODELO. [YEAR START], TBLMODELO. [YEAR END], TBLMODELO. [Num doors] FROM WHERE TBLMODELO (((TBLMODELO.MARCA) = [Forms]! [INSERT ORDER]! [Combinação65])) ;

这里一切正常,但需要更新后命令对这些相同的字段进行不同的查询......查询将必须搜索相同的数据,但查询“CONSULTA DE VFV INSERIR PEÇA”并仅完成查询“ELV咨询插入件”的结果。可以在同一个文本框上激活第二个查询,或者你必须是我写第一行的代码.....有什么想法吗?

TRANSLATE
“CONSULTA DE VFV INSERIR PEÇA” – QUERY INSERT PART
TBLMARCA – TABLE OF BRAND
TBLMODELO- TABLE OF MODEL 

【问题讨论】:

Texto689有记录源吗? 它没有控制源,但该部分运行良好。我需要该号码来运行查询并根据查询结果更新“combination65”和“69”组合。如果我没有在 texto689 中输入任何内容,我希望它定期查询:“Combination65”-从 TBLMARCA “COMBINATION69”中选择 TBLMARCA.MARCA - 选择 TBLMODELO.MODELO、TBLMODELO。 [年开始],TBLMODELO。 [年终],TBLMODELO。 [Num door] FROM WHERE TBLMODELO (((TBLMODELO.MARCA) = [Forms]![INSERT ORDER]![Combinação65]));你了解我的需求吗? 我认为您需要使用 VBA。使用记录集来提取所需的查询。使用 iif 或 switch 评估数据,并将值写入 VBA 中的字段。 基因你能举一些例子吗?我需要找出代码中使用什么命令将查询表数据放入指定的文本框......我尝试这段代码没有结果 [Private Sub Texto689_LostFocus() If Not IsNull(Me.Texto689) Then DoCmd.OpenQuery "CONSULTA DE VFV INSERIR PEÇAS" DoCmd.RunSQL (sqlString) ME.Combinação65 = "CONSULTA DE VFV INSERIR PEÇAS"。 MARCA FROM "CONSULTA DE VFV INSERIR PEÇAS" End If End Sub] @Gene 如果你想要视频我可以发布它 【参考方案1】:

使用 DLookup:

Private Sub Texto689_LostFocus ()
    If Not IsNull (Me!Texto689.Value) Then
        Me!Combinação65.Value = DLookup("[MARCA]", "[CONSULTA DE VFV INSERIR PEÇAS]")
    End If
End Sub

【讨论】:

感谢您解决了我的问题...我还有一个疑问,我认为您可以帮助我。在这种形式中,我有一个名为“Texto694”的文本框,它是零件的编号与一个名为“TABELASDEPRODUTOS”的表相连。我有第一个列作为关键列,它自动是一个数字。一旦我弄脏了那个特定的表格,我就需要它出现。我该怎么做?我是这个论坛的新手。你认为我需要把这个问题放在另一部分吗? 是的,提出一个新问题,提供详细信息和您的编码尝试。并在此处标记答案,以方便日后访问。

以上是关于2个不同的使用VBA代码查询相同的文本框的主要内容,如果未能解决你的问题,请参考以下文章

Excel vba列表框多列多行从14个文本框

尝试使用 sql/vba 的结果填充文本框并出现 #Name 错误

如何让Access 空文本框参与计算时默认是0,如图碳粉为空,计算时自动变0,别用VB代码,VB我会,请用VBA

在 Access VBA 中使用代码自动生成文本框

VBA一例:如何保持文本框焦点

jqury的学习