在Outlook中创建文件夹:错误800A0401-语句的预期结尾

问题描述 投票:14回答:1

我创建了.vbs文件以在Outlook中创建文件夹。

我从MSDN中复制了大部分脚本并得到了

“语句的预期结尾”错误代码800A0401

Option Explicit
Dim myNameSpace As Outlook.NameSpace
Dim myFolder As Outlook.Folder
Dim myNewFolder As Outlook.Folder

Set myNameSpace = Application.GetNamespace("MAPI")
Set myFolder = myNameSpace.GetDefaultFolder(olFolderInbox)
Set myNewFolder = myFolder.Folders.Add("Postini")

Wscript.Echo "Folder created"
Wscript.Quit

以前从未创建过.vbs脚本。

Windows 7 64位和Outlook2010。以本地管理员身份运行。

vbscript outlook
1个回答
32
投票

此错误是因为您不能将变量变暗,尤其是在VBS中。更明确地说,使用“ Dim”语句时无需在VBScript中定义变量类型,因为VBScript中的所有变量自动都是Variant类型。如果您尝试将变量变暗为任何东西,它将引发错误。

相反,您想要:

Dim myNameSpace
Dim myFolder
Dim myNewFolder

此外,您似乎刚刚从Outlook复制了一些VBA,并尝试将其作为VBS运行。

VBscript不知道如何解释Application.GetNameSpace("MAPI")

您还需要创建一个Outlook应用程序。

dim myOutlook
set myOUtlook = CreateObject("Outlook.Application")

此外,由于无法在VBS中提供引用,因此必须对任何对象使用后期绑定(这就是我使用CreateObject的原因。因此,重新编写代码如下:

Option Explicit
Dim myOutlook
Dim myNameSpace
Dim myFolder
Dim myNewFolder

set myOUtlook = CreateObject("Outlook.Application")
Set myNameSpace = myOutlook.GetNamespace("MAPI")
Set myFolder = myNameSpace.GetDefaultFolder(6) '6 is the value of olFolderInbox
Set myNewFolder = myFolder.Folders.Add("Postini")  
Wscript.Echo "Folder created"
Wscript.Quit
© www.soinside.com 2019 - 2024. All rights reserved.