演示中动态控制内嵌图表显示下拉框).ppt

演示中动态控制内嵌图表显示下拉框).ppt

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
演示中动态控制内嵌图表显示下拉框)

演示PPT中动态控制内嵌图表显示 chenjun 2005.3.31 * 在excel中可以通过窗体或ActiveX控件达到动态控制图表显示的目的,但当Excel图表作为对象内嵌到PPT后,在PPT播放模式下,所有在Excel对象中的控件都是不可选的,只能在PPT的编辑模式下双击对象后在Application.Excel中进行控制。那么怎样才能在PPT播放模式下可以控制插入的Excel图表动态显示?一个方法是借助PPT中的VBA编程,用PPT中的ActiveX控件(注意在PPT中没有窗体工具中的控件)控制内嵌的Excel对象中的相关单元格区域,达到动态控制。这里指的ActiveX控件就是在“视图》工具栏》控件工具箱”中的控件。 下面介绍具体的步骤: 1.在PPT的编辑模式下需要插入图表的页面中用“插入》对象》Microsoft Excel图表”插入一个内嵌的Excel图表,编辑数据及图表(最好是用一个图表工作表显示图表),用一个工作表中的单元格放入数据作为控制图表显示的单元格(这个只是为了方便理解,其实用VBA不要辅助单元格也可以直接改变图表数据引用的)。 2.退出Excel编辑,在PPT选择“视图》工具栏》控件工具箱”打开“控件工具箱”,在图表所在页插入一个组合框。 插入“组合框”控件后,按Alt+F11就可以在VBE中看到工程中显示出了一个Slide对象(只有加入了ActiveX控件后才能在工程资源管理器中出现Slide对象),如图 点击看相关页面 3.在VBE的Slide对象相应的模块中加入如下代码: Option Explicit 声明公共变量 Dim Wb As Object, Sh As Object, SouceRng As Object, TarCell As Object 当控件获得焦点时运行 Private Sub ComboBox1_GotFocus() Dim i As Integer 设置Wb为内嵌的Excel工作薄,Sh为指定工作表,SouceRng和TarCell为指定单元格区域 Set Wb = Me.Shapes(1).OLEFormat.Object Me表示正在播放的Slide Set Sh = Wb.worksheets(sheet1) Set SouceRng = Sh.Range(B1:D1) Set TarCell = Sh.Range(F1) With ComboBox1 先清除列表 If .ListCount 0 Then .ListIndex = -1 For i = .ListCount - 1 To 0 Step -1 .RemoveItem i Next i End If 加入列表项 For i = 1 To SouceRng.Count .AddItem SouceRng.offset(0, i - 1).Range(A1) Next i 选择第一项 .ListIndex = 0 修改TarCell单元格中的值 TarCell = .Value End With End Sub 提示:使用后期绑定,所以可以不在VBE的“工具》引用”中对Excel库进行引用。 这是考虑对不同Office版本的通用性,如果可以确定版本,还是先引用Excel库,再用先期绑定好,编程中有自动对象列表,运行速度和稳定性也要高。 4.在VBE的Slide对象相应的模块中再加入如下代码: ‘当控件失去焦点时运行释放对象变量 Private Sub ComboBox1_LostFocus() Set TarCell = Nothing Set SouceRng = Nothing Set Sh = Nothing Set Wb = Nothing End Sub ‘当控件值改变时运行对内嵌工作薄单元格的改变 Private Sub ComboBox1_Change() 改变内嵌工作薄中相应单元格的值 TarCell = ComboBox1.Value End Sub 点击返回 演示PPT中动态控制内嵌图表显示 chenjun 2005.3.31

文档评论(0)

yurixiang1314 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档