仅使用VBA在powerpoint中创建图表,而不使用嵌入的excel数据
我正在做一个个人powerpoint项目,我认为在powerpoint中使用activex使幻灯片更具交互性会很酷。我有一些activex框,您可以在其中设置人口和年增长率,最后一步是将我得到的5年预测数据绘制在一个折线图上。我尝试过使用基于excel的VBA,但大多数解决方案似乎需要从工作表中提取数据,因此在powerpoint中无法工作 我还尝试了以下代码来构建图表,跳过了工作表的需要,但由于遇到运行时错误424:Object required error(对象必需错误),因此没有效果:仅使用VBA在powerpoint中创建图表,而不使用嵌入的excel数据,vba,powerpoint,Vba,Powerpoint,我正在做一个个人powerpoint项目,我认为在powerpoint中使用activex使幻灯片更具交互性会很酷。我有一些activex框,您可以在其中设置人口和年增长率,最后一步是将我得到的5年预测数据绘制在一个折线图上。我尝试过使用基于excel的VBA,但大多数解决方案似乎需要从工作表中提取数据,因此在powerpoint中无法工作 我还尝试了以下代码来构建图表,跳过了工作表的需要,但由于遇到运行时错误424:Object required error(对象必需错误),因此没有效果: S
Sub AddChart()
Dim cht As Chart
Dim ser As Series
Set cht = Charts.Add
cht.ChartType = xlColumnClustered
Set ser = cht.SeriesCollection.NewSeries
ser.XValues = Array(1, 3, 5, 7, 9)
ser.Values = Array(2.4, 3.2, 5.7, 12.67)
End Sub
有什么解决办法吗?或者我在这里打一匹死马
谢谢 Powerpoint没有
图表。添加,但或。添加图表
像这样的事情应该会让你行动起来:
Sub AddChart()
Dim cht As Chart
Dim ser As Series
Set cht = ActivePresentation.Slides(1).Shapes.AddChart(-1, xlColumnClustered).Chart
Set ser = cht.SeriesCollection.NewSeries
ser.XValues = Array(1, 3, 5, 7, 9)
ser.Values = Array(2.4, 3.2, 5.7, 12.67)
End Sub
这个解决方案有效!谢谢,正如你提到的,我使用了错误的运算符。这个解决方案仍然会弹出一个excel,但我希望绕过这个问题,或者至少使用屏幕更新错误的解决方法。你知道如何不依赖excel,只使用powerpoint吗?我不知道powerpoint中有任何图表不依赖excel。也就是说,也许您正在寻找类似这样的东西,即使用ActiveX按钮更改图表外观。