【问题标题】:VBA Chart setsourcedataVBA图表setsourcedata
【发布时间】:2012-11-02 18:32:36
【问题描述】:

我必须编写一个 VBA 脚本来定义图表的数据源,但我不是 VBA 程序员。在我的工作簿中,我有许多工作表,许多工作表有许多图表。 在我的 VBA 中,我必须为每个图表定义数据源。为此,我想知道我是否可以在我的模块中编写以下语句:

<sheet-name>.<chart-name>.SetSourceData Source ='CPU_UTIL'!$A$1:$A$31,'CPU_UTIL'!$N$1:$O$31

这个语法是否正确,可以直接使用吗?

【问题讨论】:

  • 我可以假设您正在从每张工作表中获取图表源数据吗?例如您有 Sheet1,其中包含 Sheet1 中图表的数据。或者您是在组合来自许多工作表的数据,然后对它们进行处理以获得某些结果,然后您使用这些结果来绘制图表?您可以更好地编写您的问题并在线搜索以了解如何编写 VBA 模块或如何使用 VBA 将数据源设置为图表。无论如何,请使用您拥有的当前模块更新您的问题!
  • Worksheets("sheet-name").ChartObjects("chart-name").Chart.SetSourceData Source:=Range("'CPU_UTIL'!$A$1:$A$31,'CPU_UTIL'!$N$1:$O$31")
  • 乔恩,请将您的评论作为答案,以便将其标记为正确。

标签: excel charts datasource vba


【解决方案1】:

首先,我有点犹豫要不要回答这个问题,因为你可以找到很多资源。作为一个基本的开始,您可以使用以下代码为基于 B 到 H 列数据的图表设置“SetSourceData”源。为此,您应该已经在 Sheet1 中有图表,并且已经使用图表向导选择了它的图表类型。否则,您可以编写添加图表、设置图表类型、设置源数据、格式/颜色,以及使用 VBA 的所有内容。 (鉴于所需的技术可用,一切都取决于您的意图)

Sub SetMyChartSourceData()
  With Sheets("Sheets1)
    .ChartObjects(1).Chart.SetSourceData Source:= .Range("B2:H100"), PlotBy:=xlColumns
  End With
End Sub

您提到了“VBA”脚本,但查看您的代码,它是“VB”脚本。然后您可以搜索如何在 Excel 中使用 VBSCript 修改现有图表。但是,如果确实需要编码,我建议您坚持使用 VBA。

首先,您可以在没有 vba 代码的情况下设置源代码。所以请让我们知道您为什么打算使用 VBA?通常大多数问题都会很快得到回答。但是你应该想知道为什么你的一个相对简单的问题在两个小时内没有得到任何回应......

Excel 中 VBA 图表的一些主要(MSDN)和良好参考:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多