How to import multiple contacts from vCard .vcf file into Outlook

Are you not able to import contacts from vCard file in outlook? Does importing results into only one contact whereas vCard file contains multiple?
One of the limitations of outlook is that it cannot read more than one contact in a vCard or .vcf file. So, if you have a vCard file containing multiple contacts and you try migrating those into outlook, it will only result into one contact being imported. It does not matter how many times you try and import vcf file it will only result into one contact being important again and again as outlook is incapable of reading multiple contacts in a single vcf file. It treats a single vcf file as a single contact. 

There are many third party utilities available for importing multiple contacts from vcf files into outlook but they are paid and trial version only converts few contacts. However, you may also easily import them into outlook manually by following the steps given in this article:
Method I: Using Hex editor and notepad
  • Open vCard file in Hexeditor
  • Select a single record between:
BEGIN:VCARD
………….
……………
END:VCARD
  • Copy and paste it in Notepad
  • Click on File -> Save as
  • Click on Save as type and select All Files
  • Type the contact name followed by .vcf extension
  • Click on Save
  • Following the above method, you may split the multiple contacts in single file to multiple files
Now, you can import the multiple vcf files in outlook one by one oruse a Macro in outlook forautomating the process:
  • Save all the vCard .vcf files in a single folder in windows root directory such as C:\vCards
  • Open outlook
  • Press Alt + F11 and open VBA editor
  • Go to Tools -> References
  • Select Microsoft Scripting Runtime and check the box
  • Select Windows Script Host Object Model and check the box
  • Click OK.
  • Click Insert -> Module
  • In blank module, Copy and paste the following code
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
  • Save the macro
  • Run it to automatically import and save all the individual files into Outlook.
Method II: Using Gmail as an intermediate
Method I can become lengthy and tiring if you have a lot of contacts. Google contacts gives you an option to save contacts as outlook supported csv file. You may follow the steps below to move the contacts to google account first follwed by downloading and importing them in csv format to outlook:
  • Open a new account on gmail if you do not wish to use your existing account for import process.
  • Login to https://www.google.com/contacts/
  • Click on More -> Import… to import contacts in Google account
  • Click on Choose File button
  • Browse to the location of vCard .vcf file containing multiple contacts
  • Select the file and click on Open
  • Click on Import to import the vCard file in Google account
  • Wait for some time for import process to complete
  • Once done, click on More -> Export… to export contacts in outlook supported Comma Separated Values .csv file
  • Select All contacts and Outlook CSV format (for importing into Outlook or another application)
  • Click on Export
  • Give the location to save the exported contacts file
Once the file is saved, open outlook and import the downloaded .csv file
Latest