Vb6 使用命令按钮在文件列表框中打开Word文档
所以我有一个filelistbox,还有dir和driveListBox。当我按下/单击我创建的“打开”命令按钮时,我试图打开文件列表框上显示的word(.docx)文件,但它会弹出一个: 错误5151 Word无法读取此文档。它可能是腐败的。 尝试以下一个或多个“打开并修复文件”。“打开 文本恢复转换器的文件。(C:\Documents and Settings\j等) Clarence\Desktop\*.docx)” 以下是我的命令按钮代码:Vb6 使用命令按钮在文件列表框中打开Word文档,vb6,Vb6,所以我有一个filelistbox,还有dir和driveListBox。当我按下/单击我创建的“打开”命令按钮时,我试图打开文件列表框上显示的word(.docx)文件,但它会弹出一个: 错误5151 Word无法读取此文档。它可能是腐败的。 尝试以下一个或多个“打开并修复文件”。“打开 文本恢复转换器的文件。(C:\Documents and Settings\j等) Clarence\Desktop\*.docx)” 以下是我的命令按钮代码: Private Sub cmdopen_Cli
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
文件对话框类型查看对象。它将允许用户选择文件,然后您可以使用文件名打开它。