Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
4198 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [Access] Enregistrement dans table liée Outlook !

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Access] Enregistrement dans table liée Outlook !

n°1576650
thekingsky
Posté le 19-06-2007 à 10:26:21  profilanswer
 

:hello:  
 
Dans mon projet sous access j'ai lié une table de contact partagé qui est à la base dans outlook.
Quand je l'ouvre il y à pas mal de champ dedant et j'ai remarqué que pour que le contact que je veux créer à partir d'un formulaire et enregistrer dans cette table il faut que je remplisse le Champ "Fichier Sous" afin de voir ce champ affiché en en-tête gras sur le contact dans outlook.  
Mais le problème c'est que quand il me crée un contact comme cela à partir de access, dans outlook je le vois bien dans la liste de contact mais c'est un objet Discussion ! et non Contact comme normalement.
 
Quel champ dois-je remplir pour que outlook le considère bien comme un contact et l'affiche en tant que tel svp ?
 
merci :)

mood
Publicité
Posté le 19-06-2007 à 10:26:21  profilanswer
 

n°1576786
thekingsky
Posté le 19-06-2007 à 14:20:07  profilanswer
 

l'enregisterment marche :
 

Code :
  1. Dim myOlApp As New Outlook.Application
  2.    Dim myNameSpace As NameSpace
  3.    Dim myFolder, myFolders, myContactFolder As MAPIFolder
  4.    Dim myNewContact As Outlook.ContactItem
  5.    Set myOlApp = CreateObject("Outlook.Application" )
  6.    Set myNameSpace = myOlApp.GetNamespace("MAPI" )
  7.    Set myFolder = myNameSpace.Folders("Dossiers publics" )
  8.    Set myFolders = myFolder.Folders("Favoris" )
  9.    Set myContactFolder = myFolders.Folders("Contacts logicarch" )
  10.    Set myNewContact = myContactFolder.Items.Add(olContactItem)
  11.    With myNewContact
  12.         .FirstName = Me.sf_contact!CON_PRENOM
  13.         .LastName = Me.sf_contact!CON_NOM
  14.         If Not IsNull(Me.sf_contact!CON_MAIL) Then
  15.             .Email1Address = Me.sf_contact!CON_MAIL
  16.         End If
  17.         .CustomerID = Me.sf_contact!CON_ID
  18.         .BusinessTelephoneNumber = Me.sf_contact!CON_TEL
  19.        
  20.         If Not IsNull(Me.sf_contact!CON_FAX) Then
  21.             .BusinessFaxNumber = Me.sf_contact!CON_FAX
  22.         End If
  23.         If Not IsNull(Me.sf_contact!CON_PORTABLE) Then
  24.             .MobileTelephoneNumber = Me.sf_contact!CON_PORTABLE
  25.         End If
  26.         .CompanyName = Me.SOC_NOM
  27.         If Not (IsNull(Me.sf_contact!CON_ADRESSE1) Or IsNull(Me.sf_contact!CON_ADRESSE2)) Then
  28.              .MailingAddressStreet = Me.sf_contact!CON_ADRESSE1 & " " & Me.sf_contact!CON_ADRESSE2
  29.         End If
  30.         .FileAs = Me.SOC_NOM & "(" & Me.sf_contact!CON_NOM & ", " & Me.sf_contact!CON_PRENOM & " )"
  31.        
  32.         If Not IsNull(Me.sf_contact!CON_VILLE) Then
  33.         .MailingAddressCity = Me.sf_contact!CON_VILLE
  34.         End If
  35.        
  36.         .Save
  37.    End With
  38.     MsgBox "Contact Ajouté"
  39.     Set myOlApp = Nothing

3
 
mais je n'est même pas besoin de lier ma table outlook dans access :)
 
Mais now le problème c'est de ajouter le contact que si il n'y est pas déjà ou sinon le mettre à jour ...  :??:

n°1576896
thekingsky
Posté le 19-06-2007 à 16:45:45  profilanswer
 

Ca marcheeeee :
Voici mon code si ca peut aider quelqu'un :
Je prend des infos dans un formulaires pour allé chercher le contact à supprimer

Code :
  1. Dim myolApp As New Outlook.Application
  2.    Dim myNameSpace As NameSpace
  3.    Dim myFolder, myFolders, myContactFolder As MAPIFolder
  4.    Dim myNewContact As Outlook.ContactItem
  5.     Dim sFilter As String
  6.     Dim strPrompt As String
  7.    
  8.     sFilter = "[FileAs]= " & Chr(34) & Me.SOC_NOM & "(" & Me.sf_contact!CON_NOM & ", " & Me.sf_contact!CON_PRENOM & " )" & Chr(34)
  9.    Set myolApp = CreateObject("Outlook.Application" )
  10.    Set myNameSpace = myolApp.GetNamespace("MAPI" )
  11.    Set myFolder = myNameSpace.Folders("Dossiers publics" )
  12.    Set myFolders = myFolder.Folders("Favoris" )
  13.    Set myContactFolder = myFolders.Folders("Contacts logicarch" )
  14.    Set myNewContact = myContactFolder.Items.Find(sFilter)
  15.     If Not TypeName(myNewContact) = "Nothing" Then
  16.         strPrompt = "Est-te vous sûre de vouloir supprimer " & Me.sf_contact!CON_CIVILITE & " " & Me.sf_contact!CON_NOM & " " & Me.sf_contact!CON_PRENOM
  17.         If MsgBox(strPrompt, vbYesNo + vbQuestion) = vbYes Then
  18.             myNewContact.Delete
  19.             MsgBox ("Contact Supprimé" )
  20.         End If
  21.     Else
  22.         MsgBox "Le contact doit être créé dans la liste de contact Outlook avant de vouloir le supprimer", vbExclamation
  23.     End If


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [Access] Enregistrement dans table liée Outlook !

 

Sujets relatifs
[Access] Déploiement avec les Runtimes 2000VBA Access probleme de renvoi
VBA Access porbleme méthode objetAccess - Liste déroulantes Dépendantes ...
[VB sous Access] Reload un sous formulaire suite modif d'un autreProbléme avec script pour modifier une table Mysql
[résolu] Champs nommé COUNT dans une table paradox[Access] Pb avec fonction Date et MsgBox Error$
Ouvrir et sauvegarder une base access en vb[Access] update de toute les colonnes si...
Plus de sujets relatifs à : [Access] Enregistrement dans table liée Outlook !


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)