今天又被学生提问,可不可以在PPT中做类似Excel中的动态图表?Excel里实现动态图表的方法通常是将图表关联到一个固定的数据区域,然后通过其他单元格的值或者控件来改变该固定区域的数据,以达到动态改变图表显示的目的。
然而在PPT中是无法直接变动图表数据源表格中的数值的,所以PPT要实现类似Excel的动态图表需要使用VBA代码来达成。以下代码只是一个很简单的演示示例,其效果就是:当演示当前PPT页面时,点击组合框,会将饼图的源数据进行修改以达到实现动态效果。
Dim wk As Object, ws As Object Private Sub ComboBox1_Click()
Set wk = Me.Shapes().Chart.ChartData.Workbook
Set ws = wk.worksheets("sheet1")
If ComboBox1.Value = "销售额" Then
For i = To
ws.Range("F" & i) = ws.Range("B" & i)
Next
Else
For i = To
ws.Range("F" & i) = ws.Range("C" & i)
Next
End If End Sub Private Sub ComboBox1_DropButtonClick()
With ComboBox1
.Clear
.AddItem "销售额"
.AddItem "比例"
End With
End Sub