找回密码
 立即注册
搜索

求段代码:巧用ppt中VBA调用excel中的VBA

2
回复
497
查看
[复制链接]

17

主题

210

帖子

44

幻币

一流武者

Rank: 3Rank: 3

积分
256
QQ
2016-4-12 13:36:35 显示全部楼层 |阅读模式
我想在ppt下运行excel下的一段代码。
具体是:我在ppt中后台打开一excel文件,想运行workbooks(“课堂答问记分系统.xlsm”).sheets("名单")中两个按钮相对应的程序,想在ppt中写一句代码,作用是点击按钮1和按钮,让其对应的程序在后台运行,然后再在另一表格中提取该程序运行后的数据。
具体是:
我若要在ppt中调用这个过程,该怎样,请指出:
Sub 初始化() 'OnSlideShowPageChange
'If Len(TextBox1.Text) = 0 Then
TextBox1.Text = ""
Dim wbXL As Excel.Workbook
Set xlApp = New Excel.Application
xlApp.DisplayAlerts = False
Set wbXL = xlApp.Workbooks.Open(ActivePresentation.Path & "课堂答问记分系统.xlsm")
call workbooks(“课堂答问记分系统.xlsm”).sheets("名单").按钮1_Click‘能这样吗调用吗?
call workbooks(“课堂答问记分系统.xlsm”).sheets("名单").按钮2_Click‘能这样吗调用吗?

TextBox1.Text = Excel.Workbooks("课堂答问记分系统.xlsm").Sheets("名单").Range("B1").Value
s = TextBox1.Text
xm = Split(s, ";")
'If ActivePresentation.SlideShowWindow.View.CurrentShowPosition = 1 Then
Me.ComboBox1.List = xm
Me.ComboBox2.List = Array("0.5", "1", "1.5", "2", "2.5", "3", "3.5", "4", "5", "6", "7", "8", "9", "10")
'End If
wbXL.Save
wbXL.Close
xlApp.Quit
Set wbXL = Nothing
Set xlApp = Nothing
If Not (xlApp Is Nothing) Then
xlApp.Quit
End If
'End If
End Sub
这种写法,没有相应的效果,请问大侠该怎样写才合适?
PPT学习论坛
回复

使用道具 举报

15

主题

202

帖子

38

幻币

一流武者

Rank: 3Rank: 3

积分
246
QQ
2016-4-12 16:19:09 显示全部楼层
Sub 初始化()
Set xlApp = CreateObject("Excel.Application")
xlApp.Workbooks.Open ActivePresentation.Path & "课堂答问记分系统.xlsm"
xlApp.Run "需要运行的宏名称"
xlApp.Visible = True
。。。。。。。
End Sub
PPT学习论坛
回复 支持 反对

使用道具 举报

13

主题

190

帖子

38

幻币

一流武者

Rank: 3Rank: 3

积分
244
QQ
2016-4-12 16:28:39 显示全部楼层
谢谢。
xlApp.Run "需要运行的宏名称"
xlApp.Visible = True
这两句很关键,是吗?能不能操控后台打开的EXCEl中的VBA呢?
PPT学习论坛
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册