我是宏功能的新手。我一直试图通过宏功能在Excel中的Subject_name字段(X,Y,Z)上插入饼图。单击宏命令按钮时,用户应该能够绘制此图形。基本上,它应该计算,然后使用数字绘制图表。
以下是当前数据的示例:
Channel_Type | Channel_Category | Category | **Subject_Name**
MICROBLOG General A X
Forum General A Z
BLOG General A Y
FORUM General A X
MICROBLOG General A Z
BLOG General A Z
这是期望的结果:
X:2 | Y:1 | Z:3
这是我之前尝试绘制整张图表的图表,但我不确定如何选择一列:
Option Explicit
Sub Example()
Dim cht As ChartObjects
For Each cht In Worksheets(1).ChartObjects
Next cht
cht.Chart.ChartType = xlPie
End Sub
我被困了一段时间。感谢任何帮助。
答案 0 :(得分:2)
在绘制图表之前,您需要汇总数据并提供要在图表中绘制的数字。图表不会自动执行此操作,并且没有图表可以绘制文本值。
有很多方法可以将数据聚合为饼图所需的三个数字值,例如使用Countif的数据透视表或公式。或者你可以编写循环文本值的VBA并将计数聚合成三个变量。
生成数字后,您可以使用它们来创建图表。
以上任何一项都可以手动完成或使用VBA完成。如果使用Pivot方法,甚至可能不需要VBA。这取决于你的情况。
答案 1 :(得分:1)
考虑在包含最后一个计数列的表格中设置数据。您可以在此输入= 1(假设每行是唯一的记录),它将自动填充每一行。关闭'主题名称'创建一个数据透视表(饼图)。和'计算'领域。然后,您可以将pivottable的刷新与命令按钮绑定(如果必须使用VBA),并且图表将在按下按钮时更新。 Excel表格中的数据意味着它还会添加新的行。
答案 2 :(得分:0)