私は古いメール クライアントから 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」という名前のアドレス帳があるとします。助けてくれてありがとう。