访问:在报表中使用文本框,如何使用不同的文本框显示引用查询中的列

时间:2015-07-29 13:44:07

标签: textbox access-vba ms-access-2010

我试图在访问中使用一堆动态文本框创建报表。假设一个名为A的特定文本框使用控件源显示当前年份     ="F" & Format(Date(),"yy")  另一个名为B的人显示前一年     ="F" & Format(Date()-360,"yy")

我有一个名为MKTCAP的查询,其中包含名为F15和F14的列,这些列会自动更新,并且每年都会连续下一年添加另一列。

在文本框A和B下,我有文本框C和D,其中我引用此查询,但在这里我想使用文本框A和B来访问MKTCAP查询的特定列。

我尝试=[MKTCAP].[(A)]和许多不同的组合,我不知道如何在谷歌上说这个问题。我错过了什么吗?有更简单的方法吗?谢谢你的帮助

1 个答案:

答案 0 :(得分:0)

假设Text1和Text2是包含F14和F15的两个文本框,Text3和Text4是从查询中提取的其他文本框:

将表单的RecordSource设置为查询MKTCAP。

将它放在Form_Load事件中:

Private Sub Form_Load()

    Me.Text3.ControlSource = Me.Text1
    Me.Text4.ControlSource = Me.Text2

End Sub

然后在Text1和Text2

的After_Update事件中
    Me.Text3.ControlSource = Me.Text1

    Me.Text4.ControlSource = Me.Text2

分别保持行更新,如果Text1和Text2在表单打开时更改。

您查找去年日期的方法有点不寻常 - 这是故意的吗?例如,12月30日,两年都是一样的。为什么不使用

="F" & Format(Date()-360,"yy") - 1