Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Outlook > VBA Outlook
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/05/2008, 16h30   #1
Membre du Club
 
Inscription : janvier 2008
Messages : 78
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 78
Points : 46
Points : 46
Par défaut Création d'un contact à partir d'une VCard

Bonjour à tous !

On me demande au boulot de créer une routine qui puisse sauvegarder les contacts et une autre pour le recopier sur la session...

J'ai réussi à exporter tous les contacts sous forme de VCard mais je ne comprends pa scomprends créer un contact à partir de la VCard enregistrer sur le disque...

Quelqu'un saurait-il me dire comment on ouvre une VCard enregistrer sur le disque puis comment créer un contact à partir de cette VCard ?
Merci d'avance pour votre aide.
myrddin772 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/05/2008, 18h24   #2
Rédacteur/Modérateur
 
Avatar de Dolphy35
 
Homme Morgan BILLY
Technicien de Production
Inscription : octobre 2004
Messages : 4 106
Détails du profil
Informations personnelles :
Nom : Homme Morgan BILLY
Âge : 33
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Technicien de Production
Secteur : Industrie

Informations forums :
Inscription : octobre 2004
Messages : 4 106
Points : 8 745
Points : 8 745
Salut,

pense à consulter la

Comment importer en masse des vCard dans le dossier contacts d'Outlook 2007 ?


Dolphy
__________________
Personnaliser la vue Backstage d'Access 2010
Découvrez avec nous Office 2010
Je ne réponds pas aux questions techniques par MP
Dolphy35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2008, 16h30   #3
Membre du Club
 
Inscription : janvier 2008
Messages : 78
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 78
Points : 46
Points : 46
Merci,

Toutefois, j'ai un problème avec la fonction
Code :
Set MavCard = MonNamespace.OpenSharedItem(strRepertoire & "\" & fleFichier.Name)
Il me dit que la méthode n'est pas gérée par l'objet...
Je suis en Outlook 2003... ça joue ?
myrddin772 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2008, 17h11   #4
Membre chevronné
 
Avatar de Oliv-
 
Inscription : mars 2006
Messages : 643
Détails du profil
Informations personnelles :
Âge : 41

Informations forums :
Inscription : mars 2006
Messages : 643
Points : 699
Points : 699
Salut,
n'aurais tu mis
Code :
strRepertoire = "C:\temp\"
au lieu de
Code :
strRepertoire = "C:\temp
"
ou alors "C:\temp" n'existe pas
Oliv- est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/05/2008, 22h34   #5
Rédacteur/Modérateur
 
Avatar de Dolphy35
 
Homme Morgan BILLY
Technicien de Production
Inscription : octobre 2004
Messages : 4 106
Détails du profil
Informations personnelles :
Nom : Homme Morgan BILLY
Âge : 33
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Technicien de Production
Secteur : Industrie

Informations forums :
Inscription : octobre 2004
Messages : 4 106
Points : 8 745
Points : 8 745
Salut,

C'est normale car la méthode OpenSharedItem n'est disponible que depuis Outlook 2007. C'est pour cela que c'est précisé dans le titre

Dolphy
__________________
Personnaliser la vue Backstage d'Access 2010
Découvrez avec nous Office 2010
Je ne réponds pas aux questions techniques par MP
Dolphy35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/05/2008, 08h18   #6
Membre du Club
 
Inscription : janvier 2008
Messages : 78
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 78
Points : 46
Points : 46
Salut à tous,

Merci de la remarque Oliv-, j'ai déjà eu ce coup là donc c'est ne des premières choses que je vérifie...

Bon ben, Dolphy35, merci quand même pour la structure de la routine... dès que je trouve le moyen de le faire sous 2003 je le poste...
M'enfin si quelqu'un a une idée... elle est la bienvenue.
myrddin772 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/05/2008, 10h27   #7
Membre chevronné
 
Avatar de Oliv-
 
Inscription : mars 2006
Messages : 643
Détails du profil
Informations personnelles :
Âge : 41

Informations forums :
Inscription : mars 2006
Messages : 643
Points : 699
Points : 699
SAlut à tous,
Voci une alternative pour 2003 :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
Sub Save_vCard_2003()
'---------------------------------------------------------------------------------------
' Procédure : Save_vCard_2003
' Auteur    : Dolphy35 - http://dolphy35.developpez.com/
' Modifié par : Oliv- pour OUTLOOK 2003
' Date      : 20/04/2008
' Détail    : Permet d'importer en masse des vCard vers le dossier Contact
'---------------------------------------------------------------------------------------
'
'Déclarations des variables
    Dim fsoObject As Scripting.FileSystemObject
    Dim fldDossier As Scripting.Folder
    Dim fleFichier As Scripting.File
    Dim MavCard As ContactItem
    Dim MonDossier As MAPIFolder
    Dim MonApp As New Outlook.Application
    Dim MonNamespace As Outlook.NameSpace
    'charge le répertoire dans la variable
    strRepertoire = "C:\temp"
    'instancie les FSO
    Set fsoObject = CreateObject("Scripting.FileSystemObject")
    Set fldDossier = fsoObject.GetFolder(strRepertoire)
    'Instancie l'espace "MAPI" - Session
    Set MonNamespace = MonApp.GetNamespace("MAPI")
    'Test si fichier *.vcf dans le dossier et ajout de celui-ci
    If (fldDossier.Files.Count > 0) Then
        For Each fleFichier In fldDossier.Files
            If (InStr(1, fleFichier.Name, ".vcf", 1) > 0) Then
            shellcommande = """C:\Program Files\Microsoft Office\OFFICE11\OUTLOOK.EXE"" /v """ & fleFichier.path & """"
 
            RetVal = Shell(shellcommande, 1)
            DoEvents
            Set MavCard = MonApp.ActiveInspector.CurrentItem
            MavCard.Save
            MavCard.Close olSave
            End If
        Next
    End If
    'Récupère le dossier Contacts par défaut
    Set MonDossier = MonNamespace.GetDefaultFolder(olFolderContacts)
    'Affichage d'outlook dans le dossier
    MonDossier.Display
    'Vide les instances
    Set fsoObject = Nothing
    Set fldDossier = Nothing
    Set MonNamespace = Nothing
    Set MavCard = Nothing
    Set MonDossier = Nothing
    MsgBox "Terminé"
End Sub
Oliv- est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/05/2008, 10h44   #8
Rédacteur/Modérateur
 
Avatar de Dolphy35
 
Homme Morgan BILLY
Technicien de Production
Inscription : octobre 2004
Messages : 4 106
Détails du profil
Informations personnelles :
Nom : Homme Morgan BILLY
Âge : 33
Localisation : France, Ille et Vilaine (Bretagne)

Informations professionnelles :
Activité : Technicien de Production
Secteur : Industrie

Informations forums :
Inscription : octobre 2004
Messages : 4 106
Points : 8 745
Points : 8 745


merci Oliv -
__________________
Personnaliser la vue Backstage d'Access 2010
Découvrez avec nous Office 2010
Je ne réponds pas aux questions techniques par MP
Dolphy35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/05/2008, 15h38   #9
Membre du Club
 
Inscription : janvier 2008
Messages : 78
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 78
Points : 46
Points : 46


Merci, sincèrement merci !
myrddin772 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h05.


 
 
 
 
Partenaires

Hébergement Web