【问题标题】:VBA Change Pivot filter and export pdf fileVBA Change Pivot过滤器并导出pdf文件
【发布时间】:2016-11-08 13:29:40
【问题描述】:

我正在尝试将我当前的许多 Excel 工作自动化。 Atm 我的数据透视表中有大约 30 个过滤器,我需要一次更改一个,然后导出为 pdf 文件。我在想有可能创建一些 VBA 代码来自动更改过滤器并将 pdf 导出(到本地文件夹),然后自动继续并更改下一个过滤器并从中创建 pdf,依此类推,30 次。

我试图找到一些指南,但对我来说是不可能的。您对我如何开始有任何想法吗?

【问题讨论】:

  • 您是否尝试过录制包含几个迭代的宏?

标签: vba excel


【解决方案1】:

好的,我发现我可以将宏录制到:

  1. 更改过滤器
  2. 另存为 PDF

效果很好,但是我需要保存的文件名是动态的,因为我需要 30 个 PDF 文件,而不是 1 个。

录制的代码是这样的

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
    "C:\Users\username\Folder\Folder\Documents\Folder\Folder\Filename.pdf" _
    , Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
    :=False, OpenAfterPublish:=False

你知道我如何根据单元格名称更改保存的文件名吗?

【讨论】:

    【解决方案2】:

    也许分别研究这两个主题,然后结合起来。

    1:如果您无法理解 this 之类的内容,可以通过录制宏然后编辑结果来更改过滤器。

    2:保存为 pdf 有点棘手,因为您可以使用很多东西来做到这一点,这取决于您的机器上是否有 adobe 等,或者您是否使用 pdfcreator 等,this 是一个示例,其中有人在做类似的事情。

    试一试,把你的代码发回来,人们会更愿意尝试帮助你。

    【讨论】:

    • 我将不得不对此发表评论,因为我没有足够的声誉来评论您的答案,但就您在那里的内容而言,您可以将Filename:= 之后的字符串更改为动态的, 即 "C:\Users\username\Folder\Folder\Documents\Folder\Folder\Filename" & i & ".pdf" 并为每个文件增加 i。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-12-04
    • 2011-07-17
    • 1970-01-01
    • 2017-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多