Vb6 使用命令按钮在文件列表框中打开Word文档

Vb6 使用命令按钮在文件列表框中打开Word文档,vb6,Vb6,所以我有一个filelistbox,还有dir和driveListBox。当我按下/单击我创建的“打开”命令按钮时,我试图打开文件列表框上显示的word(.docx)文件,但它会弹出一个: 错误5151 Word无法读取此文档。它可能是腐败的。 尝试以下一个或多个“打开并修复文件”。“打开 文本恢复转换器的文件。(C:\Documents and Settings\j等) Clarence\Desktop\*.docx)” 以下是我的命令按钮代码: Private Sub cmdopen_Cli

所以我有一个filelistbox,还有dir和driveListBox。当我按下/单击我创建的“打开”命令按钮时,我试图打开文件列表框上显示的word(.docx)文件,但它会弹出一个:

错误5151 Word无法读取此文档。它可能是腐败的。 尝试以下一个或多个“打开并修复文件”。“打开 文本恢复转换器的文件。(C:\Documents and Settings\j等) Clarence\Desktop\*.docx)”

以下是我的命令按钮代码:

Private Sub cmdopen_Click()
    Dim nAns As Long
    Dim objFile As String
    Dim objpath As String
    Dim objname As String
    objpath = Dir1.Path & "\"
    objname = "*.docx"
    objFile = objpath & objname

    nAns = MsgBox("Please confirm to open file ' " & objFile & "'?'", vbQuestion & vbYesNo)
    If nAns = vbYes Then
        Set objWord = CreateObject("Word.Application")
        objWord.Visible = True
        Set objDoc = objWord.Documents.Open(objFile)
    End If
End Sub
调试将突出显示
Set objDoc=objWord.Documents.Open(objFile)

我有一种预感,问题在于
objname=“*.docx”
,尽管我不知道如何在不键入任何文件名的情况下打开任何word文件(.docx)。

这是说
C:\Documents and Settings\JHON Clarence\Desktop*.docx
不是word文档。似乎您要删除扩展名为
docx
的所有文件,为此,您必须首先枚举它们。参见
Dir
function(documentation)我试图做的是打开扩展名为.docx的文件,而不是删除它们。啊,被注释误导了。但是您提供了一个
*.docx
作为名称,所以您试图打开路径中的所有Word文件?如果只有一个文件名,为什么要传递
*.docx
而不是实际的文件名?如果我有不同的名称,例如File1.docx和File2.docx,并且我只想打开File1.docx,如何在
对象名
上不键入File1.docx就打开它?如果您想让用户选择,然后使用
msoFileDialogOpen
文件对话框类型查看对象。它将允许用户选择文件,然后您可以使用文件名打开它。