次の方法で共有


プログラムによってすべての連絡先の表示形式を変更する

Outlook では、[連絡先] のオプションを使用して新しい連絡先をファイルする方法と、新しい連絡先を作成する場合の既定の設定を指定できます。 既定の設定がたとえば [姓 名] であれば、まず姓の順、姓が同じであれば名の順にファイルされることになります。 しかしこの設定を変更しても、変更後に新たに作成した連絡先にしか適用されません。 既に存在する連絡先の場合、既定の Last、First から FirstLast に変更するなど、名前の処理方法を変更する場合は、インスペクターの既存の連絡先ごとに個別に行うか、マクロを記述して連絡先フォルダー内のすべての既存の連絡先の設定を変更する必要があります。

このトピックでは、既定の連絡先フォルダー内のすべての連絡先アイテムを通過し、各連絡先アイテムの FileAs プロパティを使用して連絡先を提出する文字列を指定するコード サンプルを示します。この特定の例では、文字列は名に変更され、その後に空白と姓が続きます。 次に、コード サンプルは変更を連絡先アイテムに保存します。

メモ 通常、Outlook のフォルダーには異種アイテムを含めることができます。連絡先フォルダーには ContactItem オブジェクトと他のアイテムを含めることができます。 コード サンプルでは、メッセージ クラス IPM でフィルター処理することで、連絡先アイテムのファイル形式のみを変更します。連絡先。 項目の種類とメッセージ クラスの詳細については、「 項目の種類とメッセージ クラス」を参照してください。

Private Sub ReFileContacts() 
 Dim items As items, item As ContactItem, folder As folder 
 Dim contactItems As Outlook.items 
 Dim itemContact As Outlook.ContactItem 
 
 Set folder = Session.GetDefaultFolder(olFolderContacts) 
 Set items = folder.items 
 Count = items.Count 
 If Count = 0 Then 
 MsgBox "Nothing to do!" 
 Exit Sub 
 End If 
 
 'Filter on the message class to obtain only contact items in the folder 
 Set contactItems = items.Restrict("[MessageClass]='IPM.Contact'") 
 
 For Each itemContact In contactItems 
 itemContact.FileAs = itemContact.FirstName + " " + itemContact.LastName 
 itemContact.Save 
 Next 
 
 MsgBox "Your contacts have been re-filed." 
End Sub

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。