文章編號: 290658 - 上次校閱: 2006年11月24日 - 版次: 6.2

如何以程式設計方式從 Access 匯入 Outlook 項目

系統提示本文適用於您使用的作業系統之外的作業系統。與您不相關的文章內容已停用。

在此頁中

全部展開 | 全部摺疊
如, 本文的 Microsoft Outlook 97 版本請參魷 \cs6 \f1 \cf6 \lang1024 170320? (http://support.microsoft.com/kb/170320/ ) .

如本篇文章, 版本的 Microsoft Outlook 98 請參魷 \cs6 \f1 \cf6 \lang1024 180981? (http://support.microsoft.com/kb/180981/ ) .

如 Microsoft Outlook 2000 版本的本文, 請參魷 \cs6 \f1 \cf6 \lang1024 208232? (http://support.microsoft.com/kb/208232/ ) .

結論

本文提供以存放在 Microsoft Access 資料庫中的資訊,建立 Microsoft Outlook 連絡人的概觀及範例程式碼。. 本文<其他相關資訊>一節中的範例程式碼應該能夠從 Microsoft Access 通用模組執行,可以做為開發完整解決方案的起點。.

其他相關資訊

Outlook 中的「匯入及匯出」功能不允許您匯入或匯出使用者定義欄位 (或內容) 中的資訊。. 如果要將資訊匯入這些欄位,您可能需要建立程式設計的解決方案,使用 Automation 來轉換資訊。.

以下的範例程式碼使用資料存取物件 (DAO),特別從 Access 中,轉換資訊到新建立的 Outlook 連絡人。. 使用修改, 您可以使用這段程式碼用來建立其他類型的 Outlook 項目, 例如約會、 備忘稿、 工作, 和例如作為基礎。

下列 Microsoft 網站上也提供了概觀及不同的程式碼範例。. 這是白皮書中的第一個範例。.
http://msdn2.microsoft.com/en-us/office/aa905351.aspx (http://msdn2.microsoft.com/en-us/office/aa905351.aspx)

程式設計考量

  • 下列範例程式碼使用 Access 2002 隨附的 Northwind 資料庫。 如果 Microsoft Office 不是安裝在預設的位置,請務必變更範例程式碼中資料庫的路徑。.
  • 您要設定參照至 Microsoft Outlook 10.0 Object Library。 根據預設值應該設定參考加入至 Microsoft DAO 3.6 Object Library 及 Microsoft Office 10.0 Object Library。
  • 這個範例中使用欄位型別為, Access 及 Outlook 中的文字。 如果要轉換其他類型的欄位,您必須適當地修改編碼。.
  • 將連絡人會自動放置在預設連絡人 ] 資料夾, 會在 [ 收件匣 ] 與相同層級。
  • 此範例所使用的 CreateItem 方法會使用預設連絡人資料夾的預設表單,來建立新的 Outlook 連絡人。. 如果您已經建立一個自訂的 Outlook 連絡人表單,您必須為每個項目設定 MessageClass 欄位到您自訂表單的名稱中。.
Microsoft 提供程式設計範例僅, 供說明之用不做任何明示或暗示, 包括但不限於, 的適售性及 / 或適合特定用途之默示責任擔保。 本文假設您對於示範所用的程式設計語言,以及用來建立和偵錯程序的工具相當熟悉。. Microsoft 技術支援工程師可以協助說明特定程序的功能,但無法修改這些範例以提供附加功能或建構程序來滿足您的特定需求。. 如果您的程式設計經驗有限,可以聯繫「Microsoft 認證夥伴」或撥打 Microsoft 收費諮詢熱線:(800) 936-5200。. 如需有關 Microsoft 認證夥伴的詳細資訊,請造訪下列 Microsoft 網站::
https://partner.microsoft.com/global/30000104 (https://partner.microsoft.com/global/30000104)
如需有關可用支援選項與如何聯絡 Microsoft 的詳細資訊,請造訪下列 Microsoft 網站::
http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS (http://support.microsoft.com/default.aspx?scid=fh;en-us;cntactms)

範例程式碼

Sub ExportAccessContactsToOutlook()

   ' Set up DAO Objects.
   Dim oDataBase As DAO.Database
   Dim rst As DAO.Recordset
   Set oDataBase = OpenDatabase _
      ("c:\Program Files\Microsoft Office\Office10\Samples\Northwind.mdb")
   Set rst = oDataBase.OpenRecordset("Customers")

   ' Set up Outlook Objects.
   Dim ol As New Outlook.Application
   Dim olns As Outlook.Namespace
   Dim cf As Outlook.MAPIFolder
   Dim c As Outlook.ContactItem
   Dim Prop As Outlook.UserProperty

   Set olns = ol.GetNamespace("MAPI")
   Set cf = olns.GetDefaultFolder(olFolderContacts)

   With rst
      .MoveFirst

      ' Loop through the Microsoft Access records.
      Do While Not .EOF

         ' Create a new Contact item.
         Set c = ol.CreateItem(olContactItem)

         ' Specify which Outlook form to use.
         ' Change "IPM.Contact" to "IPM.Contact.<formname>" if you've
         ' created a custom Contact form in Outlook.
         c.MessageClass = "IPM.Contact"

         ' Create all built-in Outlook fields.
         If ![CompanyName] <> "" Then c.CompanyName = ![CompanyName]
         If ![ContactName] <> "" Then c.FullName = ![ContactName]

         ' Create the first user property (UserField1).
         Set Prop = c.UserProperties.Add("UserField1", olText)

         ' Set its value.
         If ![CustomerID] <> "" Then Prop = ![CustomerID]

         ' Create the second user property (UserField2).
         Set Prop = c.UserProperties.Add("UserField2", olText)

         ' Set its value and so on....
         If ![Region] <> "" Then Prop = ![Region]

         ' Save and close the contact.
         c.Save
         c.Close

         .MoveNext
      Loop
   End With

End Sub
				

?考

如需有關從 Outlook 匯出資料至 Access, 請按一下下列文件編號, 檢視 「 Microsoft 知識庫 」 中的文件中的文件:
290792? (http://support.microsoft.com/kb/290792/ ) 如何以程式設計方式將 Outlook 項目匯出到 Access
如需有關可用資源和關於 Microsoft Outlook 解決方案, 常問問題解答的詳細資訊請按一下下面文件編號, 檢視 「 Microsoft 知識庫 」 中的文件中的文件:
287530? (http://support.microsoft.com/kb/287530/EN-US/ ) OL 2002: 關於自訂表單以及 Outlook 方案問題

這篇文章中的資訊適用於:
  • Microsoft Outlook 2002 Standard Edition
  • Microsoft Access 2002 Standard Edition
關鍵字:?
kbdatabase kbimport kbprogramming kbvba kbhowto KB290658 KbMtzh kbmt
機器翻譯機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。如果您發現錯誤,並想要協助我們進行改善,請填寫本篇文章下方的問卷。
按一下這裡查看此文章的英文版本:290658? (http://support.microsoft.com/kb/290658/en-us/ )
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。