注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

零售创新,创新那些事儿,SPSS,VBA

零售创新

 
 
 

日志

 
 
关于我

新浪微博,零售创新 研究经理,数据分析师 希望和市场研究和零售业的同事共同进步! 本博客发表的都是免费或试用的资料,如果有版权问题请发邮件wangli12a@163.com联系删除。 spss excel vba blog

网易考拉推荐

PowerPoint中利用VBA调用、插入、引用ActiveX控件方法举例  

2010-01-15 16:17:45|  分类: 电脑知识 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

PowerPoint中利用VBA调用、插入、引用ActiveX控件方法举例

笔者在实验数据处理课件中利用ActiveX控件与VBA达到了导入实验数据、处理实验数据和导出实验结果的目的。以下简要叙述导入实验数据的制作过程。

1、打开PowerPoint在新建的演示文稿插入两个空白幻灯片;

2、单击 “控件工具箱”中要添加的“命令按钮”图标,在第一个空白幻灯片输入有关实验数据处理的文字并在合适位置插入一个命令按钮;

3、选定刚插入的命令按钮后,单击 “控件工具箱”中“属性”图标,在caption属性值改为“导入实验数据”,即命名为“导入实验数据”命令按钮;

4、执行“工具// Visual Basic编辑器”菜单命令,在打开的Visual Basic编辑器中输入以下宏代码:

1)定义变量

Public setpxp As New ADODB.Recordset

Public cnnpxp As New ADODB.Connection

Dim constring As String……

2)调用“输入框”和 “消息框”

yourName = InputBox("请输入姓名(学号)", "实验数据处理课件(合金熔点的确定)")

x = MsgBox("你的姓名(学号): " & yourName, 0, "实验数据处理课件(合金熔点的确定)")

If x = 1 And yourName <> "" Then  '满足条件显示第二个幻灯片

SlideShowWindows(Index:=1).View.GotoSlide 2  

End If

3)插入一个通用对话框

单击“控件工具箱”中的“其他控件”按钮,在打开的对话框中选择Microsoft Common Dialog Control Version 6.0项,插入在第一个幻灯片中,其宏代码为:

CommonDialog1.InitDir = "c:\temp"

CommonDialog1.Filter = "文本文件|*.mdb"

CommonDialog1.ShowOpen  '显示“打开”通用对话框,并选择有关文件(pxpmdb.mdb)“打开”

constring = "provider=microsoft.jet.oledb.4.0;" & "data source=" & CommonDialog1.FileName

cnnpxp.Open constring  '建立与数据库pxpmdb.mdb(在目录c:\temp中存在)的连接

setpxp.Open "pxp", cnnpxp, adOpenStatic  '指定表名pxppxpmdb.mdb中含有pxp表)

row = 2

With setpxp

Do While Not .EOF  '将表pxp中的数据给数组sy()赋值及用row检索表pxp的行数

sy(row, 1) = setpxp.Fields(0)  'pxp表中的相应数据给相应的数组元素sy()赋值,下同

sy(row, 2) = setpxp.Fields(1)

sy(row, 3) = setpxp.Fields(2)

row = row + 1  

.MoveNext  '将数据库pxp表中的指针下移一行

Loop

row = row – 1  

If .EOF Then

.Close '数据导入完成后关闭数据库Recordset对象

Set setpxp = Nothing释放内存空间

End If

End With

4)在第二个幻灯片Slides(2)中插入的表格并自动导入实验数据

col = 3  '列数设置

ActivePresentation.Slides(2).Shapes.title.TextFrame.TextRange = "自动导入实验数据"  '加入标题文字

Set tb51 = ActivePresentation.Slides(2).Shapes.AddTable(row, col, 250, 100, 430, 80).Table  '插入表格

ActivePresentation.Slides(2).Shapes(1).Fill.ForeColor.RGB = RGB(255, 230, 0)

tb51.Cell(1, 1).Shape.TextFrame.TextRange.Text = "序号"  '输入表头,下同

tb51.Cell(1, 2).Shape.TextFrame.TextRange.Text = "合金含铝量(%"

tb51.Cell(1, 3).Shape.TextFrame.TextRange.Text = "合金熔点(摄氏度)"

For x = 2 To row  '在表格中自动导入数据

For y = 1 To 3

If y = 1 Then

tb51.Cell(x, y).Shape.TextFrame.TextRange.Text = Format$(sy(x, y), "##00")

Else

tb51.Cell(x, y).Shape.TextFrame.TextRange.Text = Format$(sy(x, y), "######0.00")

End If

Next y

Next x

cnnpxp.Close '关闭连接

PowerPoint中利用VBAMicrosoftActiveX数据对象(ADO)的引用能使PowerPoint链接到外部数据库并进行通信,这一功能克服了PowerPoint的不足,加强了PowerPoint与其它应用程序(尤其是Microsoft Office中各应用程序)的数据通信和数据交换,极大地提升了PowerPoint的交互功能和多媒体课件的开发能力。利用VBA宏代码编写程序,在PowerPoint课件中对导入的实验数据进行处理,显示处理结果后及结合VBAActiveX控件将处理结果输出到文本文件。

2)调用“输入框”和 “消息框”

yourName = InputBox("请输入姓名(学号)", "实验数据处理课件(合金熔点的确定)")

x = MsgBox("你的姓名(学号): " & yourName, 0, "实验数据处理课件(合金熔点的确定)")

If x = 1 And yourName <> "" Then  '满足条件显示第二个幻灯片

SlideShowWindows(Index:=1).View.GotoSlide 2  

End If

这一段中,调用“输入框”和 “消息框”------------调用是什么意思,如何调用呀

(用inputbox是出现输入框,用msgbox的结果是出现提示框。也就是说调用这两个函数.)

  评论这张
 
阅读(1455)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017