Bonjour,
J'aimerais savoir s'il est possible d'ajouter un contact=20
=E0 Microsoft Outlook =E0 partir d'un formulaire access (en=20
ne prenant que certains champs de celui-ci).
Merci d'avance,
Ben.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Père FOURAS
Bonjour,
Oui c'est tout à faire possible.
Voici un bout de code trouvé sur http://www.vbfrance.com :
Option Explicit
Private Sub AjoutContact(Sender As String, Adresse As String) Dim objApp As Outlook.Application Dim Contact As ContactItem
'Créer une instance de Outlook Set objApp = CreateObject("Outlook.Application")
Dim ContactItem As Outlook.ContactItem 'Crée une nouvelle instance de contact Set Contact = objApp.CreateItem(olContactItem) 'Copie le nom de la personne qui à envoyer le email dans le contact Contact.FullName = Sender Contact.Email1Address = Adresse 'Sauvegarde le contact Contact.Save Set Contact = Nothing
End Sub
Je pense qu'il manque une référence à une 'librairy' (mais comme sur mon poste de travail j'ai Lotus Notes, je n'ai pas le nom exacte de la librairie).
Cordialement
"ben" wrote:
Bonjour, J'aimerais savoir s'il est possible d'ajouter un contact à Microsoft Outlook à partir d'un formulaire access (en ne prenant que certains champs de celui-ci). Merci d'avance, Ben.
Bonjour,
Oui c'est tout à faire possible.
Voici un bout de code trouvé sur http://www.vbfrance.com :
Option Explicit
Private Sub AjoutContact(Sender As String, Adresse As String)
Dim objApp As Outlook.Application
Dim Contact As ContactItem
'Créer une instance de Outlook
Set objApp = CreateObject("Outlook.Application")
Dim ContactItem As Outlook.ContactItem
'Crée une nouvelle instance de contact
Set Contact = objApp.CreateItem(olContactItem)
'Copie le nom de la personne qui à envoyer le email dans le contact
Contact.FullName = Sender
Contact.Email1Address = Adresse
'Sauvegarde le contact
Contact.Save
Set Contact = Nothing
End Sub
Je pense qu'il manque une référence à une 'librairy' (mais comme sur mon
poste de travail j'ai Lotus Notes, je n'ai pas le nom exacte de la librairie).
Cordialement
"ben" wrote:
Bonjour,
J'aimerais savoir s'il est possible d'ajouter un contact
à Microsoft Outlook à partir d'un formulaire access (en
ne prenant que certains champs de celui-ci).
Merci d'avance,
Ben.
Voici un bout de code trouvé sur http://www.vbfrance.com :
Option Explicit
Private Sub AjoutContact(Sender As String, Adresse As String) Dim objApp As Outlook.Application Dim Contact As ContactItem
'Créer une instance de Outlook Set objApp = CreateObject("Outlook.Application")
Dim ContactItem As Outlook.ContactItem 'Crée une nouvelle instance de contact Set Contact = objApp.CreateItem(olContactItem) 'Copie le nom de la personne qui à envoyer le email dans le contact Contact.FullName = Sender Contact.Email1Address = Adresse 'Sauvegarde le contact Contact.Save Set Contact = Nothing
End Sub
Je pense qu'il manque une référence à une 'librairy' (mais comme sur mon poste de travail j'ai Lotus Notes, je n'ai pas le nom exacte de la librairie).
Cordialement
"ben" wrote:
Bonjour, J'aimerais savoir s'il est possible d'ajouter un contact à Microsoft Outlook à partir d'un formulaire access (en ne prenant que certains champs de celui-ci). Merci d'avance, Ben.
Robert Parise
Essai cela en remplacant certain champs
Private Sub cmdUpDateOutlook_Click()
Dim oOutlook As New Outlook.Application Dim colItems As Items Dim tblContacts As Recordset Dim upContactId As UserProperty Dim strMessage As String
'Get a reference to the Items collection of the contacts folder. Set colItems = oOutlook.GetNamespace("MAPI"). _ GetDefaultFolder(olFolderContacts).Items
Do Until tblContacts.EOF If boolCheckName(Nz(tblContacts!ContactName), colItems) Then 'Use the Add method of Items collection to fill in the 'fields with the data from the table and then save the new 'item. With colItems.Add .FullName = Nz(tblContacts!ContactName) .BusinessAddressStreet = Nz(tblContacts!Address) .BusinessAddressCity = Nz(tblContacts!city) .BusinessAddressState = Nz(tblContacts!region) .BusinessAddressPostalCode = Nz(tblContacts!PostalCode) .BusinessAddressCountry = Nz(tblContacts!country) .BusinessTelephoneNumber = Nz(tblContacts!Phone) .BusinessFaxNumber = Nz(tblContacts!Fax) .CompanyName = Nz(tblContacts!CompanyName) .JobTitle = Nz(tblContacts!ContactTitle)
'Create a custom field. Set upContactId = .UserProperties. _ Add("ContactID", olText)
upContactId = Nz(tblContacts![CustomerID])
.Save End With End If tblContacts.MoveNext Loop tblContacts.Close
strMessage = "Your contacts have been successfully exported." MsgBox strMessage, vbOKOnly, MESSAGE_CAPTION Set oOutlook = Nothing
End Sub
Function boolCheckName(strName As String, objNameSpace As Items) _ As Boolean
Dim varSearchItem As Variant Dim strMessage As String
If Len(strName) = 0 Then strMessage = "This record is missing a full name. " strMessage = strMessage & "Do you want to add it anyway?" If MsgBox(strMessage, vbYesNo, MESSAGE_CAPTION) = vbYes Then boolCheckName = True Else boolCheckName = False End If Else 'Find the first item that has a FullName equal to strName. If no 'item is found, varSearchItem wil be equal to Nothing. Set varSearchItem = objNameSpace.Find("[FullName] = """ & strName & """") If varSearchItem Is Nothing Then boolCheckName = True Else strMessage = "A contact named " & strName & " already exists. " strMessage = strMessage & _ "Do you want to add this contact anyway?"
If MsgBox(strMessage, vbYesNo, MESSAGE_CAPTION) = vbYes Then boolCheckName = True Else boolCheckName = False End If End If End If End Function
"ben" a écrit dans le message de news: 1ed101c4fee3$4db89430$ Bonjour, J'aimerais savoir s'il est possible d'ajouter un contact à Microsoft Outlook à partir d'un formulaire access (en ne prenant que certains champs de celui-ci). Merci d'avance, Ben.
Essai cela en remplacant certain champs
Private Sub cmdUpDateOutlook_Click()
Dim oOutlook As New Outlook.Application
Dim colItems As Items
Dim tblContacts As Recordset
Dim upContactId As UserProperty
Dim strMessage As String
'Get a reference to the Items collection of the contacts folder.
Set colItems = oOutlook.GetNamespace("MAPI"). _
GetDefaultFolder(olFolderContacts).Items
Do Until tblContacts.EOF
If boolCheckName(Nz(tblContacts!ContactName), colItems) Then
'Use the Add method of Items collection to fill in the
'fields with the data from the table and then save the new
'item.
With colItems.Add
.FullName = Nz(tblContacts!ContactName)
.BusinessAddressStreet = Nz(tblContacts!Address)
.BusinessAddressCity = Nz(tblContacts!city)
.BusinessAddressState = Nz(tblContacts!region)
.BusinessAddressPostalCode = Nz(tblContacts!PostalCode)
.BusinessAddressCountry = Nz(tblContacts!country)
.BusinessTelephoneNumber = Nz(tblContacts!Phone)
.BusinessFaxNumber = Nz(tblContacts!Fax)
.CompanyName = Nz(tblContacts!CompanyName)
.JobTitle = Nz(tblContacts!ContactTitle)
'Create a custom field.
Set upContactId = .UserProperties. _
Add("ContactID", olText)
upContactId = Nz(tblContacts![CustomerID])
.Save
End With
End If
tblContacts.MoveNext
Loop
tblContacts.Close
strMessage = "Your contacts have been successfully exported."
MsgBox strMessage, vbOKOnly, MESSAGE_CAPTION
Set oOutlook = Nothing
End Sub
Function boolCheckName(strName As String, objNameSpace As Items) _
As Boolean
Dim varSearchItem As Variant
Dim strMessage As String
If Len(strName) = 0 Then
strMessage = "This record is missing a full name. "
strMessage = strMessage & "Do you want to add it anyway?"
If MsgBox(strMessage, vbYesNo, MESSAGE_CAPTION) = vbYes Then
boolCheckName = True
Else
boolCheckName = False
End If
Else
'Find the first item that has a FullName equal to strName. If no
'item is found, varSearchItem wil be equal to Nothing.
Set varSearchItem = objNameSpace.Find("[FullName] = """ & strName &
"""")
If varSearchItem Is Nothing Then
boolCheckName = True
Else
strMessage = "A contact named " & strName & " already exists. "
strMessage = strMessage & _
"Do you want to add this contact anyway?"
If MsgBox(strMessage, vbYesNo, MESSAGE_CAPTION) = vbYes Then
boolCheckName = True
Else
boolCheckName = False
End If
End If
End If
End Function
"ben" <anonymous@discussions.microsoft.com> a écrit dans le message de news:
1ed101c4fee3$4db89430$a501280a@phx.gbl...
Bonjour,
J'aimerais savoir s'il est possible d'ajouter un contact
à Microsoft Outlook à partir d'un formulaire access (en
ne prenant que certains champs de celui-ci).
Merci d'avance,
Ben.
Dim oOutlook As New Outlook.Application Dim colItems As Items Dim tblContacts As Recordset Dim upContactId As UserProperty Dim strMessage As String
'Get a reference to the Items collection of the contacts folder. Set colItems = oOutlook.GetNamespace("MAPI"). _ GetDefaultFolder(olFolderContacts).Items
Do Until tblContacts.EOF If boolCheckName(Nz(tblContacts!ContactName), colItems) Then 'Use the Add method of Items collection to fill in the 'fields with the data from the table and then save the new 'item. With colItems.Add .FullName = Nz(tblContacts!ContactName) .BusinessAddressStreet = Nz(tblContacts!Address) .BusinessAddressCity = Nz(tblContacts!city) .BusinessAddressState = Nz(tblContacts!region) .BusinessAddressPostalCode = Nz(tblContacts!PostalCode) .BusinessAddressCountry = Nz(tblContacts!country) .BusinessTelephoneNumber = Nz(tblContacts!Phone) .BusinessFaxNumber = Nz(tblContacts!Fax) .CompanyName = Nz(tblContacts!CompanyName) .JobTitle = Nz(tblContacts!ContactTitle)
'Create a custom field. Set upContactId = .UserProperties. _ Add("ContactID", olText)
upContactId = Nz(tblContacts![CustomerID])
.Save End With End If tblContacts.MoveNext Loop tblContacts.Close
strMessage = "Your contacts have been successfully exported." MsgBox strMessage, vbOKOnly, MESSAGE_CAPTION Set oOutlook = Nothing
End Sub
Function boolCheckName(strName As String, objNameSpace As Items) _ As Boolean
Dim varSearchItem As Variant Dim strMessage As String
If Len(strName) = 0 Then strMessage = "This record is missing a full name. " strMessage = strMessage & "Do you want to add it anyway?" If MsgBox(strMessage, vbYesNo, MESSAGE_CAPTION) = vbYes Then boolCheckName = True Else boolCheckName = False End If Else 'Find the first item that has a FullName equal to strName. If no 'item is found, varSearchItem wil be equal to Nothing. Set varSearchItem = objNameSpace.Find("[FullName] = """ & strName & """") If varSearchItem Is Nothing Then boolCheckName = True Else strMessage = "A contact named " & strName & " already exists. " strMessage = strMessage & _ "Do you want to add this contact anyway?"
If MsgBox(strMessage, vbYesNo, MESSAGE_CAPTION) = vbYes Then boolCheckName = True Else boolCheckName = False End If End If End If End Function
"ben" a écrit dans le message de news: 1ed101c4fee3$4db89430$ Bonjour, J'aimerais savoir s'il est possible d'ajouter un contact à Microsoft Outlook à partir d'un formulaire access (en ne prenant que certains champs de celui-ci). Merci d'avance, Ben.
Robert Parise
Regarde aussi http://users.skynet.be/accesshome/outlook.htm#AddContacts
"ben" a écrit dans le message de news: 1ed101c4fee3$4db89430$ Bonjour, J'aimerais savoir s'il est possible d'ajouter un contact à Microsoft Outlook à partir d'un formulaire access (en ne prenant que certains champs de celui-ci). Merci d'avance, Ben.
Regarde aussi
http://users.skynet.be/accesshome/outlook.htm#AddContacts
"ben" <anonymous@discussions.microsoft.com> a écrit dans le message de news:
1ed101c4fee3$4db89430$a501280a@phx.gbl...
Bonjour,
J'aimerais savoir s'il est possible d'ajouter un contact
à Microsoft Outlook à partir d'un formulaire access (en
ne prenant que certains champs de celui-ci).
Merci d'avance,
Ben.
Regarde aussi http://users.skynet.be/accesshome/outlook.htm#AddContacts
"ben" a écrit dans le message de news: 1ed101c4fee3$4db89430$ Bonjour, J'aimerais savoir s'il est possible d'ajouter un contact à Microsoft Outlook à partir d'un formulaire access (en ne prenant que certains champs de celui-ci). Merci d'avance, Ben.