【问题标题】:How do I select a specific column based on a variable in a MS Access query?如何根据 MS Access 查询中的变量选择特定列?
【发布时间】:2012-01-03 17:45:19
【问题描述】:

我有一个包含以下字段的大表:

Date
Product_ID
AmountEUR_Field1
AmountEUR_Field2
AmountEUR_Field3
AmountEUR_Field4
AmountEUR_Field5

每个 AmountEUR 字段代表产品的销售额。 有 5 个不同的 AmountEUR 字段的原因是它们基于不同的货币汇率(例如 BeginingOfMonthRate、AverageMonthRate、EndOfMonthRate 等)。

我现在想将特定的 AmountEUR 字段复制到另一个表,但是要复制的 AmountEUR 字段会随时间而变化(有时是 AmountEUR_Field2,有时是金额EUR_Field5)。 因此,我需要根据另一个表中的变量选择特定列。 (该变量的值应该在 1 到 5 之间)。

我一直在考虑创建一个名为 AmountEUR_ToBeUsed 的新字段,该字段使用正确的 AmountEUR_Field 进行更新,但这让我又回到了选择要复制的特定列的问题。

能否在 Access 查询设计器中制定解决方案,还是需要一些 VBA 代码?

【问题讨论】:

    标签: ms-access vba ms-access-2010 query-designer


    【解决方案1】:

    您可以使用 Access Query 设计器完成此操作。

    具体来说,您将需要函数IIF

    例如,如果您想在希望使用 AmountEUR_Field1 的日期之前指定,否则您可以说:AmountEUR_Field5:

    IIF(somedate<#1/1/2011#,AmountEUR_Field1,AmountEUR_Field5)
    

    注意,根据您电脑的设置,您可能需要说:

    IIF(somedate<#1/1/2011#;AmountEUR_Field1;AmountEUR_Field5)
    

    【讨论】:

    猜你喜欢
    • 2021-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-23
    • 1970-01-01
    • 2022-01-22
    • 2022-08-18
    • 2023-04-07
    相关资源
    最近更新 更多