【问题标题】:visual basic export to pngVisual Basic 导出为 png
【发布时间】:2014-11-21 00:07:17
【问题描述】:

我正在尝试将 Excel 图表导出为 png。图表由宏构建,标题定义为

.ChartTitle.Text = Area" + NR

NR 定义为

 NR = Str(Cells(2, 2)).

这是我想使用的代码:

Charts(ChartName).Activate
With ActiveChart
ActiveChart.Export "D:\My_Charts\ChartName.png"
End With

我找到了多种将图表导出为 png 的其他方法,问题是我不知道如何为不仅是纯文本而且还包含变量的 ChartTitle 执行此操作。图表名称如何填写,与图表标题有什么区别?

我希望输出 png 为 Area_NR.png 或 AreaNR.png

如果我的问题太模糊,请提前道歉,我是使用 VBA 的新手,正在努力解决问题,但我在其他论坛上找到的答案让我难以理解。

【问题讨论】:

  • NR 是什么?那是一个变量吗?试试"D:\My_Charts\ChartName" & NR & ".png"

标签: excel vba charts export


【解决方案1】:

这是按名称获取图表的方法。 ChartObject 是工作表的成员,因此需要指定工作表。这里的 VariableName 是图表的名称。

Dim MyChart As ChartObject

VariableName = "Chart 1"
Set MyChart = Sheets("SheetName").ChartObjects(VariableName)
MyChart.Export "D:\My_Charts\ChartName.png"

要按标题获取图表,您需要遍历工作表的 ChartObjects 并询问标题。

Dim MyChart As ChartObject

VariableTitle = "Chart Title"

For Each MyChart In Sheets("SheetName").ChartObjects
    If MyChart.Chart.ChartTitle.Caption = VariableTitle Then
        MyChart.Export "D:\My_Charts\ChartName.png"
    End If
Next

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-04
    • 2015-03-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多