Are you trying to run this macro from Outlook? If so then you need some changes. Basically the code prompts for the target folder, then creates the entry in the default folder from which it is moved to the previously selected folder.
Sub AddContact()
Dim objContact As ContactItem
Dim objFolder As Folder
Set objFolder = Session.PickFolder
Set objContact = CreateItem(olContactItem)
With objContact
.FullName = "AAA"
.Email1Address = "kenmyer@fabrikam.com"
.CompanyName = "Fabrikam"
.JobTitle = "Administrateur reseau"
.HomeTelephoneNumber = "555-555-8888"
.HomeAddress = "3725 205th NE" & vbCrLf & "Redmond, wa 98052"
.Birthday = "9/15/1966"
.Save
.Move objFolder
End With
lbl_Exit:
Set objContact = Nothing
Set objFolder = Nothing
Exit Sub
End Sub
If you are trying to run it from another Office application then it needs some further changes
Option Explicit
Sub AddContact()
Dim objOutlook As Object
Dim objContact As Object
Dim objFolder As Object
Const olContactItem As Long = 2
Set objOutlook = CreateObject("Outlook.Application")
Set objFolder = objOutlook.Session.PickFolder
Set objContact = objOutlook.CreateItem(olContactItem)
With objContact
.FullName = "AAA"
.Email1Address = "kenmyer@fabrikam.com"
.CompanyName = "Fabrikam"
.JobTitle = "Administrateur reseau"
.HomeTelephoneNumber = "555-555-8888"
.HomeAddress = "3725 205th NE" & vbCrLf & "Redmond, wa 98052"
.Birthday = "9/15/1966"
.Save
.Move objFolder
End With
lbl_Exit:
Set objOutlook = Nothing
Set objFolder = Nothing
Set objContact = Nothing
Exit Sub
End Sub