将外部联系人批量导入到 Exchange Online

重要:  本文是由机器翻译的,请参阅免责声明。请在 此处 中查找本文的英文版本以便参考。

本文适用于管理员。是否正尝试将联系人导入自己的邮箱?请参阅将联系人导入 Outlook

您的公司是否Exchange Online中有大量您想要共享的通讯簿 (也称为全局地址列表) 中包含的现有商务联系人?将外部联系人添加为通讯组,就像您可以与用户在公司内的成员吗?如果这样,您可以使用Exchange Online PowerShell 和 CSV (逗号分隔值) 文件批量外部的联系人导入到Exchange Online。它是三步流程:

步骤 1:创建包含外部联系人信息的 CSV 文件

步骤 2:使用 PowerShell 创建外部联系人

步骤 3:将信息添加到外部联系人的属性

通过以上步骤导入联系人后,可执行以下更多任务:

添加更多外部联系人

隐藏共享通讯簿中的外部联系人

步骤 1:创建包含外部联系人信息的 CSV 文件

第一步是创建包含外部联系人(想要导入到 Exchange Online 的)信息的 CSV 文件。

  1. 将以下文本复制到记事本中的文本文件,并将其作为 CSV 文件保存到桌面,方法是使用文件名后缀 .csv,例如,ExternalContacts.csv。

    提示: 如果您的语言包含特殊字符 (如åäö中瑞典语) 将 CSV 文件以 utf-8 或其他 Unicode 编码,当您将文件保存在记事本中。

    ExternalEmailAddress,Name,FirstName,LastName,StreetAddress,City,StateorProvince,PostalCode,Phone,MobilePhone,Pager,HomePhone,Company,Title,OtherTelephone,Department,CountryOrRegion,Fax,Initials,Notes,Office,Manager
    danp@fabrikam.com,Dan Park,Dan,Park,1234 23rd Ave,Golden,CO,80215,206-111-1234,303-900-1234,555-1212,123-456-7890,Fabrikam,Shipping clerk,555-5555,Shipping,US,123-4567,R.,Good worker,31/1663,Dan Park
    pilar@contoso.com,Pilar Pinilla,Pilar,Pinilla,1234 Main St.,Seattle,WA,98017,206-555-0100,206-555-0101,206-555-0102,206-555-1234,Contoso,HR Manager,206-555-0104,Executive,US,206-555-0105,P.,Technical decision maker,31/1000,Dan Park
    

    CSV 文件的第一行(即标题行)列出将联系人导入 Exchange Online 时可使用的联系人属性。各属性名之间用逗号分隔。标题行下方的每一行表示用于导入单个外部联系人的属性值。

    注意: 此文本包含可删除的示例数据。但请勿删除或更改首行(标题)。它包含外部联系人的所有属性。

  2. 在 Microsoft Excel 中打开并编辑该 CSV 文件,因为使用 Excel 编辑 CSV 文件要容易的多。

  3. 为每个要导入到 Exchange Online 的联系人创建一个行。填充尽可能多的单元格。每个联系人的共享通讯簿中将显示此信息。

    重要:  创建外部联系人时需要下列属性(标题行中的前四项),且必须将其填充到 CSV 文件中:ExternalEmailAddressNameFirstNameLastName。在步骤 2 中运行的 PowerShell 命令将使用这些属性的值创建联系人。

返回页首

步骤 2:使用 PowerShell 创建外部联系人

下一步是使用步骤 1 中创建的 CSV 文件和 PowerShell,将 CSV 文件中列出的外部联系人批量导入到 Exchange Online。

  1. 将 PowerShell 连接到 Exchange Online 组织。有关分步说明,请参阅连接 PowerShell Exchange Online。连接到 Exchange OnlinePowerShell 时,请确保使用 Office 365 全局管理员帐户的用户名和密码。

  2. 将 PowerShell 连接到 Exchange Online 之后,请转到桌面文件夹,即步骤 1中保存 CSV 文件的文件夹,例如 C:\Users\Administrator\desktop。

  3. 运行以下命令以创建外部联系人:

    Import-Csv .\ExternalContacts.csv|%{New-MailContact -Name $_.Name -DisplayName $_.Name -ExternalEmailAddress $_.ExternalEmailAddress -FirstName $_.FirstName -LastName $_.LastName}
    

    创建新联系人可能会花费一定时间,具体取决于导入的数量。运行完此命令后,PowerShell 将显示创建的新联系人列表。

  4. 要查看新的外部联系人,转到 Exchange admin center (EAC),然后单击“收件人”>“联系人”。

    提示: 有关连接到 EAC 的说明,请参阅 Exchange Online 中的 Exchange 管理中心

  5. 如有必要,请单击“刷新“刷新”图标 以更新列表和查看导入的外部联系人。

    导入的联系人会出现在 Outlook 和 Outlook on the web 中的共享通讯簿中。

    注意: 也可转到管理中心“用户”>“联系人”,在 Office 365 管理中心中查看联系人。

返回页首

步骤 3:将信息添加到外部联系人的属性

在步骤 2 中运行完命令后,外部联系人便已创建,但不包含任何联系人或组织信息,这些信息是 CSV 文件中大多数单元格中的信息。这是因为创建新的外部联系人时只填充所需属性。如果不具有 CSV 文件中填充的所有信息,也不要担心。如果 CSV 文件中没有相应信息,就不会进行添加。

  1. 将 PowerShell 连接到 Exchange Online 组织。有关分步说明,请参阅连接到 PowerShell Exchange Online

  2. 转到桌面文件夹,即步骤 1 中保存 CSV 文件的文件夹,例如 C:\Users\Administrator\desktop。

  3. 运行以下两个命令,将 CSV 文件中的其他属性添加到步骤 2 中创建的外部联系人。

    $Contacts = Import-CSV .\ExternalContacts.csv
    
    $contacts | ForEach {Set-Contact $_.Name -StreetAddress $_.StreetAddress -City $_.City -StateorProvince $_.StateorProvince -PostalCode $_.PostalCode -Phone $_.Phone -MobilePhone $_.MobilePhone -Pager $_.Pager -HomePhone $_.HomePhone -Company $_.Company -Title $_.Title -OtherTelephone $_.OtherTelephone -Department $_.Department -Fax $_.Fax -Initials $_.Initials -Notes $_.Notes -Office $_.Office -Manager $_.Manager}
    

    注意: Manager 参数可能存在问题。如果 CSV 文件中的单元格为空,则会收到错误消息,且属性信息将不会添加到联系人。如果无需指定管理器,则只需从之前的 PowerShell 命令删除 –Manager $_.Manager

    更新联系人可能会花费一定时间,具体取决于在步骤 1 中导入的数量。

  4. 验证添加到联系人的属性:

    1. 在 EAC 中,转到“收件人”>“联系人”。

    2. 单击“联系人”,然后单击“编辑“编辑”图标 以显示联系人的属性。

操作完成。用户可在通讯簿 Outlook 和 Outlook on the web 中看到联系人和附加信息。

返回页首

添加更多外部联系人

可重复步骤 1 至步骤 3 在 Exchange Online 中添加新的外部联系人。你或组织中的用户只需在 CSV 文件中为新的联系人添加新的一行。然后,可运行步骤 2 和步骤 3 中的 PowerShell 命令,创建新的联系人并向其添加信息。

注意: 运行该命令以创建新联系人时,可能会收到错误消息,指示要创建的联系人已存在。但会创建任何添加到 CSV 文件的新联系人。

隐藏共享通讯簿中的外部联系人

某些公司可能只使用外部联系人,以便可将其添加为通讯组的成员。在这种情况下,他们可能希望隐藏共享通讯簿中的外部联系人。方法如下。

  1. 将 PowerShell 连接到 Exchange Online 组织。有关分步说明,请参阅连接到 PowerShell Exchange Online

  2. 要隐藏单个外部联系人,运行以下命令:

    Set-MailContact <external contact> -HiddenFromAddressListsEnabled $true
    

    例如,若要隐藏共享通讯簿中的 Pilar Pinilla,运行以下命令:

    Set-MailContact "Pilar Pinilla" -HiddenFromAddressListsEnabled $true
    
  3. 若要隐藏共享通讯簿中的所有外部联系人,运行以下命令:

    Get-Contact -ResultSize unlimited -Filter {(RecipientTypeDetails -eq 'MailContact')} | Set-MailContact -HiddenFromAddressListsEnabled $true
    

隐藏后,外部联系人不会显示在共享通讯簿中,但仍可将其添加为通讯组成员。

返回页首

注意: 机器翻译免责声明:本文是由无人工介入的计算机系统翻译的。Microsoft 提供机器翻译是为了帮助非英语国家/地区用户方便阅读有关 Microsoft 产品、服务和技术的内容。由于机器翻译的原因,本文可能包含词汇、语法或文法方面的错误。

另请参阅

Office 365 中的电子邮件 - 管理员帮助

使用 Windows PowerShell 管理 Office 365 和 Exchange Online

扩展你的技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×