2008-10-16 27 views
4

因此,我想將所有聯繫人從Outlook導出爲電子名片。如果我谷歌,我得到一堆共享軟件程序,但我想要的東西免費的,只是工作。將所有聯繫人導出爲Outlook中的電子名片

如果我自己編寫代碼,我想我應該使用Microsoft.Office.Interop.Outlook程序集。有沒有人已經編碼將ContactItems轉換爲電子名片?

編輯:我用完全不同的方式解決了問題,請參閱下面的答案,但我已將dok1.myopenid.com的答案標記爲已接受,因爲它回答了我的原始問題。

+0

感謝您的澄清。我以爲你正在尋找一種方法來做到這一點在代碼中。您的解決方案對於您要完成的任務肯定更容易。但顯然,其他人發現你的問題無論如何有用。 – DOK 2008-10-21 14:27:00

+0

我正在尋找一種方法來做它的代碼,但因爲我只需要一次性的解決方案,在這種情況下,我的手動方式更容易:) – 2008-10-22 06:57:41

回答

9

我解決它以非編程方式:

  • 選擇所有聯繫人在Outlook
  • 文件夾中轉發它們作爲卡對自己
  • 保存所有附件(電子名片),c:\temp
  • 打開命令提示符並鍵入命令copy /a *.vcf c:\allcards.vcf,它將所有vcards連接成一個
3

他們確實很難找到,不是嗎?看看這是否有幫助。 http://msdn.microsoft.com/en-us/library/aa579624(EXCHG.80).aspx

包括:以下示例使用CDO Person對象來獲取聯繫人的vCard信息。

Dim oPerson As New CDO.Person 
Dim strm As New ADODB.Stream 

' Assume strURL is a valid URL to a person contact item 
oPerson.DataSource.Open strURL 

' You can set the ADO Stream object to the returned vCard stream 
Set strm = oPerson.GetvCardStream 

' Save the stream to a file. 
' Note: using adSaveCreateOverwrite may cause an existing 
' contact to be overwritten. 
strm.SaveToFile "d:\vcard.txt", adSaveCreateOverwrite 

' You don't have to set a Stream object, 
' just use the Stream methods off GetvCardStream directly 
oPerson.GetvCardStream.SaveToFile "d:\vcard.txt", adSaveCreateOverwrite 

是的,唯一的代碼示例有在VB中。

+0

我不熟悉VB,不幸的是得到的錯誤:``錯誤類型'CDO.Person'未定義。試圖尋找適當的參考,但沒有喜悅。 – 2012-11-21 17:14:46

1

剛剛購買了X8,當我無法輕鬆轉移我的聯繫人時,我正要變得非常生氣......直到我開始在手機上進行窺探。

首先,將Outlook中的所有聯繫人導出到電子名片(我發現通過電子郵件發送給自己是最簡單的方法,如果您收到「附件很多......」的錯誤消息,您可以將它們保存在發送郵件的電子郵件中文件夾)並將電子名片複製到手機上的存儲卡中。

其次,在手機上打開你的通訊錄,然後按下電話上的左鍵(上面有4個小方塊的按鈕,而不是屏幕上的4個方塊...物理按鈕!)。

三,選擇「導入/導出」並選擇從存儲卡導入。導入所有的vCard文件,你應該是黃金。

祝你好運......不要問我任何問題,因爲我不會再回頭看看更多的帖子......只是想通過自己想出來。

4

爲什麼它的價值 - 我剛剛遇到此線程尋找相同的導出到個人.VCF文件從Outlook。我有2007年(不知道這是否有所作爲),但我選擇了所有的聯繫人,並將它們拖到一個新的電子郵件,作爲單獨的.VCF文件添加。全部添加後,我點擊新電子郵件的附件部分,點擊CTRL-A突出顯示所有這些郵件,然後左鍵單擊並拖動第一個(因此全部)到我想要的個人文件夾。 VCF文件。幾分鐘的Outlook「思考」我的400個聯繫人,他們都在那裏!

相關問題