VBA中程序语句Set PsDoc = word.documents.Open("d:\My Documents\" & Adoc) 的含义

现从网上复制了一个将从指定目录(不含子目录)批量读入多个Word文件的内容到当前工作工作表和VBA程序:
Sub Example2() '运行前,需要在代码窗口操作:工具》引用》勾选 Microsoft Word 12.0 …

Dim Adoc As String, PsDoc As Document

'On Error Resume Next
'ChDrive "d" '设置当前驱动器盘符
ChDir "d:\My Documents" '进入指定目录
Adoc = Dir("*.doc")

Dim word As Object
Dim documents As Object

Set word = CreateObject("word.application")

Sheets(1).Select
Sheets.Add

Do While Adoc <> "" '如果是文件夹,或者没有此文件,则会返回""
Set PsDoc = word.documents.Open("d:\My Documents\" & Adoc) '打开指定文档

PsDoc.Content.Copy

Sheets(1).Select
r = Sheets(1).Range("a65536:z65536").End(xlUp).Row + 2
Sheets(1).Range("a" & r).Select
ActiveSheet.Paste

PsDoc.Close True
Adoc = Dir()
Loop

Set word = Nothing
Set word = Nothing
End Sub
其中:Set word = CreateObject("word.application")
Set PsDoc = word.documents.Open("d:\My Documents\" & Adoc) '打开指定文档

这两语句是什么意思?谢谢啦

Set word = CreateObject("word.application") 创建WORD对象

Set PsDoc = word.documents.Open("d:\My Documents\" & Adoc) '打开指定路径下的 WORD 文档
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-06-16
Set word = CreateObject("word.application")
我把前面一个word改一下名称好解释一点。
Set myword = CreateObject("word.application")
myword这个对象变量就代表了office的word应用程序。有了它,我们才能打开一个word文档。

Set PsDoc = word.documents.Open("d:\My Documents\" & Adoc)
把指定路径下的word文档打开,并且把这个文档赋值给对象变量PsDoc。这样一来,PsDoc就代表了那个指定路径的文档。本回答被提问者和网友采纳