下面的代码在Windows 7中正常运行。我在Windows XP中收到错误“ ActiveX组件无法创建对象:'Word.Application'”。 XP中未安装Microsoft Word,这是导致错误的原因吗? 我是vbscript的新手。 这是什么决议?
Const msoFileDialogOpen = 1
Set fso = CreateObject("Scripting.FileSystemObject")
Set objWord = CreateObject("Word.Application")
Set WshShell = CreateObject("WScript.Shell")
strInitialPath = WshShell.ExpandEnvironmentStrings("%USERPROFILE%") & "\Desktop\"
objWord.ChangeFileOpenDirectory(strInitialPath)
With objWord.FileDialog(msoFileDialogOpen)
.Title = "Select the file to process"
.AllowMultiSelect = False
.Filters.Clear
.Filters.Add "All Files", "*.*"
.Filters.Add "Excel Files", "*.xls;*.xlsx"
.Filters.Add "Text Files", "*.txt"
.Filters.Add "Various Files", "*.xls;*.doc;*.vbs"
If .Show = -1 Then 'short form
For Each File in .SelectedItems 'short form
Set objFile = fso.GetFile(File)
WScript.Echo objFile.Path
Next
Else
End If
End With
'Close Word
objWord.Quit
答案 0 :(得分:2)
是的,如果计算机中未安装MS Word,则无法创建“Word.Application”,因为它甚至不存在于您的系统中。
解决此问题的最简单方法是在计算机中安装MSWord。困难的方法是找到activeX程序集及其依赖项,并手动将它注册到计算机中。
您可以使用http://www.nirsoft.net/utils/axhelper.html检查计算机中已安装的ActiveX组件列表。
- Openoffice可以解决这个而不是MS Word吗?
当然,请查看此link