我正在将人们从较旧的电子邮件客户端转换为 Outlook 2010。尝试有效地转换联系人可能会很痛苦,因此我们有一些代码可以为我们完成繁重的工作。我正在使用的过程在一定程度上起作用。我有来自联系人的所有 VCard,并在网上找到了导入所有这些 VCard 的宏的源代码。问题是它默认为“联系人”通讯簿。这是代码:
Sub OpenSaveVCard()
Dim objWSHShell As IWshRuntimeLibrary.IWshShell
Dim objOL As Outlook.Application
Dim colInsp As Outlook.Inspectors
Dim strVCName As String
Dim fso As Scripting.FileSystemObject
Dim fsDir As Scripting.Folder
Dim fsFile As Scripting.File
Dim vCounter As Integer
Set fso = New Scripting.FileSystemObject
Set fsDir = fso.GetFolder("C:\VCARDS")
For Each fsFile In fsDir.Files
strVCName = "C:\VCARDS\" & fsFile.Name
Set objOL = CreateObject("Outlook.Application")
Set colInsp = objOL.Inspectors
If colInsp.Count = 0 Then
Set objWSHShell = CreateObject("WScript.Shell")
objWSHShell.Run strVCName
Set colInsp = objOL.Inspectors
If Err = 0 Then
Do Until colInsp.Count = 1
DoEvents
Loop
colInsp.Item(1).CurrentItem.Save
colInsp.Item(1).Close olDiscard
Set colInsp = Nothing
Set objOL = Nothing
Set objWSHShell = Nothing
End If
End If
Next
End Sub
我对 Visual Basic 和编写宏不太熟悉,有没有办法可以指定保存到哪个通讯簿?例如,如果我有一个名为“Test”的通讯簿。感谢您的任何帮助。