在Excel中如何在不切换焦点的情况下更改活动的PowerPoint演示文稿?

Noobmaster69

我使用宏将对象从Excel导出到PowerPoint。我可以选择要导出到的当前打开的演示文稿。但是,当我切换演示文稿时,是否有办法停止将焦点从Excel切换到PowerPoint?我的代码如下:

Function SetActivePresentation(Filename As String) As Boolean

    Dim i As Integer

    ' This just checks if PowerPoint is loaded - not needed for the question
    If Me.Load = False Then
        SetActivePresentation = False
    End If

    ' Loop through the PowerPoint windows
    For i = 1 To Me.pPowerpoint.Windows.Count
        If Me.pPowerpoint.Windows(i).Presentation.name = Filename Then
            Me.pPowerpoint.Windows(i).Activate
            Exit For
        End If
    Next i

    SetActivePresentation = True

End Function

这是pPowerPoint该类中方法:

Public pPowerpoint As Object

Public Property Get PowerPoint() As Object
    PowerPoint = pPowerpoint
End Property

最后是我的加载功能:

Function Load() As Boolean

    On Error Resume Next

    ' Set the PowerPoint object
    Set pPowerpoint = GetObject(Class:="PowerPoint.Application")

    ' Handle if the PowerPoint Application is not found
    If Err.Number = 429 Then
        GoTo ErrorHandler
    End If

    Load = True

    Exit Function

ErrorHandler:

    Load = False

End Function

然后,从代码的其他位置开始,我可以通过以这种方式遍历PowerPoint幻灯片来导出Excel对象,以上是我的PowerPoint类For Each slide In PowerPoint.pPowerpoint.ActivePresentation.Slides在哪里PowerPoint

苏西洛

不切换焦点的情况下更改活动的PowerPoint演示文稿有些困惑但是从讨论中的评论中可以看出,真正的问题是导出Excel对象而不关注Powerpoint。为了解决这个问题,您可以避免使用ActivePresentation对象。如何?一种简单的解决方案是使用全局变量。

下面的代码显示了它是如何完成的。

'Global variables
Dim pptPres As PowerPoint.Presentation
Dim pptSlide As PowerPoint.Slide

'searching for presentation (function/sub)
For i = 1 To Me.pPowerpoint.Windows.Count
    If Me.pPowerpoint.Windows(i).Presentation.name = Filename Then
        'dont activate! Me.pPowerpoint.Windows(i).Activate
        Set pptPres = Me.pPowerpoint.Windows(i).Presentation
        Exit For
    End If
Next i

'copy object "Char 1" at "Sheet1"
'by accessing the global variable (other function/sub)
Set objChart = Worksheets("Sheet1").ChartObjects("Chart 1").Chart
objChart.ChartArea.Copy
Set pptSlide = pptPres.Slides.Add(1, ppLayoutBlank)
pptSlide.Shapes.Paste

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SwiftUI如何在不切换标签栏的情况下刷新单个标签视图

来自分类Dev

如何在不切换的情况下查看所有teamviewer监视器?

来自分类Dev

Outlook和AutoHotkey,如何在不切换字体的情况下输出Unicode符号?

来自分类Dev

emacs:如何在不切换窗口且不抬高框架的情况下显示缓冲区?

来自分类Dev

emacs:如何在不切换窗口且不抬高框架的情况下显示缓冲区?

来自分类Dev

如何在不切换plot()参数的情况下切换MATLAB图上x和y值的显示

来自分类Dev

如何在不重新启动活动的情况下切换主题(夜间模式)?

来自分类Dev

如何在不使用transform:scale的情况下更改CSS切换开关的大小?

来自分类Dev

如何在没有代码的情况下更改切换按钮颜色

来自分类Dev

如何在不切换到root的情况下以root用户身份运行smartctl?

来自分类Dev

如何在没有后退按钮的情况下切换Xamarin Shell中的页面?

来自分类Dev

emacs lisp如何在不切换到临时缓冲区的情况下将按钮插入

来自分类Dev

如何在不切换到* Calendar *的情况下使用日历光标到可见日期

来自分类Dev

如何在不切换行的情况下“查看”文本文件中的字符串的下一行?

来自分类Dev

如何在Java中定义字符串数组并在切换情况下使用它

来自分类Dev

如何在不影响相同类元素的情况下切换 jquery 中的单个类?

来自分类Dev

在我的情况下如何创建切换效果?

来自分类Dev

如何在没有重复效果的情况下延长滑动切换的延迟?

来自分类Dev

如何在没有选择列表的情况下切换jQuery的盲目效果(默认)

来自分类Dev

如何在没有NavigationView或Popover的情况下切换视图?

来自分类Dev

Git:如何在不接触工作目录的情况下切换分支?

来自分类Dev

如何在不运行应用程序的情况下切换日食工作区?

来自分类Dev

如何在没有重复效果的情况下延长滑动切换的延迟?

来自分类Dev

如何在没有“隐藏的div”或“不显示”的情况下切换内容?

来自分类Dev

如何在没有选择列表的情况下切换jQuery的盲目效果(默认)

来自分类Dev

如何在没有jQuery的情况下切换类?

来自分类Dev

如何在不使用C / C ++循环的情况下切换n次?

来自分类Dev

如何在附加某些条件的情况下切换requestAnimationFrame函数?

来自分类Dev

kivy:如何在不挂屏的情况下切换屏幕时运行循环功能?

Related 相关文章

  1. 1

    SwiftUI如何在不切换标签栏的情况下刷新单个标签视图

  2. 2

    如何在不切换的情况下查看所有teamviewer监视器?

  3. 3

    Outlook和AutoHotkey,如何在不切换字体的情况下输出Unicode符号?

  4. 4

    emacs:如何在不切换窗口且不抬高框架的情况下显示缓冲区?

  5. 5

    emacs:如何在不切换窗口且不抬高框架的情况下显示缓冲区?

  6. 6

    如何在不切换plot()参数的情况下切换MATLAB图上x和y值的显示

  7. 7

    如何在不重新启动活动的情况下切换主题(夜间模式)?

  8. 8

    如何在不使用transform:scale的情况下更改CSS切换开关的大小?

  9. 9

    如何在没有代码的情况下更改切换按钮颜色

  10. 10

    如何在不切换到root的情况下以root用户身份运行smartctl?

  11. 11

    如何在没有后退按钮的情况下切换Xamarin Shell中的页面?

  12. 12

    emacs lisp如何在不切换到临时缓冲区的情况下将按钮插入

  13. 13

    如何在不切换到* Calendar *的情况下使用日历光标到可见日期

  14. 14

    如何在不切换行的情况下“查看”文本文件中的字符串的下一行?

  15. 15

    如何在Java中定义字符串数组并在切换情况下使用它

  16. 16

    如何在不影响相同类元素的情况下切换 jquery 中的单个类?

  17. 17

    在我的情况下如何创建切换效果?

  18. 18

    如何在没有重复效果的情况下延长滑动切换的延迟?

  19. 19

    如何在没有选择列表的情况下切换jQuery的盲目效果(默认)

  20. 20

    如何在没有NavigationView或Popover的情况下切换视图?

  21. 21

    Git:如何在不接触工作目录的情况下切换分支?

  22. 22

    如何在不运行应用程序的情况下切换日食工作区?

  23. 23

    如何在没有重复效果的情况下延长滑动切换的延迟?

  24. 24

    如何在没有“隐藏的div”或“不显示”的情况下切换内容?

  25. 25

    如何在没有选择列表的情况下切换jQuery的盲目效果(默认)

  26. 26

    如何在没有jQuery的情况下切换类?

  27. 27

    如何在不使用C / C ++循环的情况下切换n次?

  28. 28

    如何在附加某些条件的情况下切换requestAnimationFrame函数?

  29. 29

    kivy:如何在不挂屏的情况下切换屏幕时运行循环功能?

热门标签

归档