使用PowerPivot自动刷新代码

时间:2013-09-27 13:31:09

标签: vba excel-vba refresh powerpivot excel

我有一个基于powerpivot的模型,正在浏览网页以自动刷新图形的过程,而无需打开powerpivot窗口,然后单击“全部刷新”按钮(我正在使用Excel 2010 )。我在这个博客上看到了Goban Saor编写的VBA代码:http://blog.gobansaor.com/vba-code-to-automate-a-powerpivot-refresh/ 问题是我对VBA的了解不足以使网站上提供的代码与我的电子表格一起使用,我想知道是否有人可以帮助我。我需要更改代码中的哪些输入才能使其与Excel 2010上的特定文件一起使用(如果有)?我的Excel文件的名称是 PTM.xlsm ,数据透视表的名称是 Table1 。 VBA代码是在工作簿脚本上还是在特定工作表下?由于我有5张链接到同一底层powerpivot的工作表,我是否需要更改代码中的任何内容才能解决这个问题?

提前感谢您的帮助!

3 个答案:

答案 0 :(得分:1)

我遇到了同样的问题,有人在这个不同的主题中建议了这个关于Codeplex的小项目:Excel and PowerPivot Refresh Suite

希望这会有所帮助,即使我不是那个可以帮助你的人:)

答案 1 :(得分:0)

您是否有机会访问SharePoint实例?如果没有,我强烈建议有一个 - 它从根本上简化了Powerpivot文件的刷新。您可能会遇到使用VBA的问题,尤其是当用户开始使用数据时。

答案 2 :(得分:0)

我从来没有让codeplex Excel和PowerPivot Refresh Suite正常工作。 这是一个非常简单的AutoHotkey脚本,您可以在任务计划上运行:

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn  ; Enable warnings to assist with detecting common errors.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.

myFile = %A_ScriptDir%\JIRA 2013 v1.xlsx

oExcel := ComObjCreate("Excel.Application")
oExcel.Visible := 1 
oWorkbook := oExcel.Workbooks.Open(myFile)
oWorkbook.RefreshAll()
oWorkbook.Save()
oExcel.quit