在Excelmacros函数中插入饼图

我对macrosfunction很陌生。 我一直试图通过macros函数在Excel中的Subject_name字段(X,Y,Z)上插入饼图。 用户应该能够在单击macros命令button时绘制该图。 基本上,它应该计数,然后使用该数字来绘制图表。

以下是当前数据的示例:

Channel_Type | Channel_Category | Category | **Subject_Name** MICROBLOG General AX Forum General AZ BLOG General AY FORUM General AX MICROBLOG General AZ BLOG General AZ 

这是预期的结果:

X:2 | Y:1 | Z:3

在这里输入图像说明

这是我之前试图绘制整张图表,但我不确定如何只select一列:

 Option Explicit Sub Example() Dim cht As ChartObjects For Each cht In Worksheets(1).ChartObjects Next cht cht.Chart.ChartType = xlPie End Sub 

我被困了一段时间。 感谢任何帮助。

考虑在一个包含最后一个计数列的表中设置数据。 你可以在这里input= 1(假设每一行都是一个唯一的logging),它会自动填充每一行。 在“主题名称”和“数量”字段之外创build数据透视图(饼图)。 然后,您可以将数据透视表刷新到命令button(如果您必须使用VBA),并且图表将在button按下时更新。 Excel表格中的数据意味着它将会添加新的行。

在绘制图表之前,您需要汇总数据并提供要在图表中绘制的数字。 图表不会自动执行,图表也不能绘制文本值。

将数据聚合到饼图所需的三个数字值中有多种方法,例如使用Countif的透视表或公式。 或者你可以写VBA循环的文本值和聚合计数到三个variables。

数字生成后,您可以使用它们来创build图表。

以上任何一项都可以手动完成或使用VBA。 如果使用Pivot方法,甚至可能不需要VBA。 这取决于你的情况。

你可以完全没有VBA,甚至自动更新。

H2中的公式是=COUNTIF(D:D,G1)并复制到H4。 图表只是通过菜单手动插入:

  • selectG1:H4
  • 菜单=>插入=>图表(select2D圈)
  • select你喜欢的模板

如果添加AD列中的条目,此图表将自动更新。

没有VBA!