CorelDRAW VBA - 打开与激活Document(文档)

公告


本专栏的相关的文章已不在同步更新,请直接访问 VBA探秘 官方网站或关注微信公众号获取最新文章动态。

CorelDRAW VBA - 打开与激活Document(文档)_第1张图片
coreldraw-vba-document-open-activate

目的

这篇教程将教会你使用 CorelDRAW VBA代码来打开和激活文档,演示 Document 对象的使用方法。

打开文档

要打开一个文档(cdr文件),你可以使用 Application.OpenDocument 方法,VBA代码如下:

Dim doc As Document
Set doc = OpenDocument("d:\MyDocuments\名片.cdr")

如果您需要,可以使用事件处理程序对打开文档触发的事件作出响应,也就是说在某个文档被打开后,你可以做你自己想做的事情:

  • Application.DocumentOpen
  • Document.Open
  • GlobalMacroStorage.DocumentOpen
  • Activating documents

每个打开后的Document(文档)对象都是 Application.Documents 集合的一个成员。这个集合中的文档对象按照他们创建或者打开的顺序排列。

为了反映文档的实际堆积顺序,必须使用 Application.Windows 集合。Application.ActiveDocument 属性提供了对活动文档的直接访问 —— 即在当前所有打开文档中最前面的文档。ActiveDocument类是Document类型的对象,因此,ActiveDocumentDocument对象一样具有相同的成员属性、方法。

如果没有打开的文档对象,则ActiveDocument对象返回 Nothing。你可以通过以下VBA代码来检查打开的文档:

If Documents.Count = 0 Then
    MsgBox "没有任何打开的文档对象", vbOK, "提示"
    Exit Sub
End If

激活文档

Document.Activate方法用来激活一个文档,所以这个方法也可以被ActiveDocument引用。以下的VBA代码用来激活第3个打开的文档(如果有3个或者更多的已打开的文档)

Documents(3).Activate

Application.ActiveDocument对象上调用 'Active' 方法是没有效果的。

如果你需要,可以通过引用下列属性之一来指定要激活的开放文档:

  • Document.FilePath — 检查文件路径 (例如,D:\MyDocuments)
  • Document.FileName — 检查文件名 (名片.cdr)
  • Document.FullFileName — 检查绝对路径,包括文件路径和文件名 (例如,d:\MyDocuments\名片.cdr)

你可以通过以下VBA代码来检查打开文档的文件名:

Public Function findDocument(filename As String) As Document
    Dim doc As Document
    For Each doc In Documents
        If doc.FileName = filename Then Exit For
        Set doc = Nothing
    Next doc
    Set findDocument = doc
End Function

小结

本篇教程到此结束,更多关于文档对象(Document)的使用,请浏览博客其他文章。


原创声明:本文首发于个人CorelDRAW VBA博客,请尊重文章版权。
转载请注明原文链接:http://www.cdrvba.com/coreldraw-vba-document-open-activate/

你可能感兴趣的:(CorelDRAW VBA - 打开与激活Document(文档))