是否可以在 Excel 中将 Excel 求解器与 Power Pivot table 结合使用

Is it possible to use the Excel Solver in combination with a Power Pivot table in Excel

我试图通过使用求解器修改 Pivottable 的输入数据来优化 Pivot table 的结果。在我看来这是不可能的,因为 Pivottable 在更改输入数据后不会自动更新。因此,如果求解器开始更改输入值,则求解器尝试优化的输出值不会发生任何变化。我还阅读了这个 post ,其中说 - 如果我理解正确的话 - 这确实是不可能的:

Can I use solver on pivot tables?

如果这不可能,我想知道是否可以将求解器与 Power Pivot tables 结合使用?在那种情况下,我会开始关于 Power Pivot 的课程。

谢谢。 马塞尔

我没有足够的声誉来发表评论所以我会回答(这不是倒退吗?) PowerPivot 可能不会让 Solver 比数据透视表做更多的事情。 我想尝试用 sumproducts、sumifs 等重现你的 pivot 的布局和外观。为你在 filter/row/column 中使用的每个字段添加二进制变量。然后使用 Solver 对其进行优化。

实际上可以将 Solver 与 Pivot Table 一起使用,只要您使用一点 Visual Basic。 我在此页面中找到了部分解决方案:https://www.get-digital-help.com/2011/06/13/auto-refresh-a-pivot-table-in-excel/

基本上,在您的 Pivot Table sheet 中设置一个宏,以便在任何数据更改时自动更新它。这可以使用此代码完成(更新枢轴 table 名称和工作 sheet 名称)。

Private Sub Worksheet_Change(ByVal Target As Range)
    Worksheets("Pivot table").PivotTables("PivotTable1").PivotCache.Refresh
End Sub

然后,确保你所有的规划求解变量都在同一个工作中sheet 作为你的枢轴table,你现在应该可以开始了。