【问题标题】:How can I use Excel's (2007) Trend function in Access?如何在 Access 中使用 Excel 的 (2007) 趋势功能?
【发布时间】:2014-04-22 21:55:37
【问题描述】:

有没有快速在 Access 中使用 Excel 的趋势功能的方法?

具体来说,我想使用 Access 数据库中的值来预测 24 个月的值。我还想使用在新列中计算的值更新数据库/表。

我是菜鸟。

【问题讨论】:

    标签: excel ms-access ms-access-2007 vba trend


    【解决方案1】:

    “有没有在 Access 中快速使用 Excel 的趋势功能的方法?”

    这是可能的。但很快,也许没那么快。

    给出已知 X 和 Y 值的 Trend() 函数数组,以及另一个用于预测 Y 值的扩展 X 范围的数组。 Trend() 将返回另一个包含预测 Y 值的数组。

    此代码在 Access 2007 中工作,并引用 Excel 对象库。

    Dim knownX, knownY, newX, TrendY
    Dim i As Long
    
    knownY = Array(2, 4, 5)
    knownX = Array(1, 2, 3)
    newX = Array(4, 5)
    TrendY = Excel.WorksheetFunction.Trend(knownY, knownX, newX)
    For i = LBound(TrendY) To UBound(TrendY)
        Debug.Print "X: " & newX(i - 1), "Y: " & TrendY(i)
    Next
    

    我使用Array() 创建输入数组,但您希望数组包含表中的值,这样会更费力。

    还要注意 Access 数组(通常)是从零开始的,但 Trend() 返回一个从一开始的数组。确保你知道你正在处理的是哪个。

    而且,由于您打算存储预测的 Y 值,因此您还有更多工作要做。

    再想一想后,我怀疑将您的 Access 数据导出到 Excel 工作簿,然后使用 COM 自动化在 Excel 中修改工作表,保存修改后的工作簿,最后将工作表数据拉回可能更容易使用权。

    【讨论】:

    • 这太棒了!!!!谢谢!我很高兴加入 Stack Overflow 社区。你帮了大忙!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多