Rendez-vous Outlook via Excel

asfour

XLDnaute Nouveau
Bonjour,

j'ai une macro qui crée le rendez-vous a partir d'un tableau excel et qui fonctionne très bien mais le problème a chaque fois que la macro et exécuté il recrée les mêmes rendez-vous ce qui fait que j'ai plusieurs fois le même rendez-vous

je ne c'est pas si il y a moyen de crée une condition qui règle le problème.

je vous la macro que j'ai:

Sub NouveauRDV_Calendrier()
'nécéssite d'activer la référence Microsoft Outlook 10.0 Object Library
Dim myOlApp As New Outlook.Application
Dim MyItem As Outlook.AppointmentItem
Dim Cell As Range

For Each Cell In Range("A8:A" & Range("A22").End(xlUp).Row)
Set MyItem = myOlApp.CreateItem(olAppointmentItem)


With MyItem
.MeetingStatus = olNonMeeting
.Subject = Cell
.Start = Cell.Offset(0, 1)
.Duration = Cell.Offset(0, 2) 'minutes
.Location = Cell.Offset(0, 3)
.Body = Cell.Offset(0, 4)
.Save
End With

Set MyItem = Nothing
Next Cell

End Sub


Merci pour votre aide
 

pyfux

XLDnaute Occasionnel
Re : Rendez-vous Outlook via Excel

Bonjour,

Avant la ligne:
Code:
Set MyItem = myOlApp.CreateItem(olAppointmentItem)

Il faut vérifier si le rendez-vous existe. (sur quel critère?...)
Si non, faire la création.
Si oui, faire la MAJ. Quel est la règle de synchronisation?
 
G

Guest

Guest
Re : Rendez-vous Outlook via Excel

Bonjour,

Ajoute une colonne à ton fichier qui contiendra 1 lorsque la macro aura créée le rendez-vous, dans l'exemple ci-dessous, colonne k (10ème colonne à droite de A), au lancement suivant si la colonne ne contient pas 1 alors le rendez-vous sera créé sinon la macro passera au suivant sans création.

Code:
    For Each cell In Range("A8:A" & Range("A22").End(xlUp).Row)
        If cell.Offset(, 10) <> 1 Then    ' colonne K
            Set MyItem = myOlApp.CreateItem(olAppointmentItem)
            With MyItem
                .MeetingStatus = olNonMeeting
                .Subject = cell
                .Start = cell.Offset(0, 1)
                .Duration = cell.Offset(0, 2)    'minutes
                .Location = cell.Offset(0, 3)
                .Body = cell.Offset(0, 4)
                .Save
                .cell.Offset(, 10) = 1
            End With
            Set MyItem = Nothing
        End If
    Next cell

A+
 

asfour

XLDnaute Nouveau
Re : Rendez-vous Outlook via Excel

Bonjour,
Merci pour votre aide,

j'ai teste le code que tu m'a donnée mais il me met une erreure a cette ligne:

.cell.Offset(, 10) = 1

je ne c'est pas pourquoi, donc mon code est:

Sub NouveauRDV_Calendrier()
'nécéssite d'activer la référence Microsoft Outlook 10.0 Object Library
Dim myOlApp As New Outlook.Application
Dim MyItem As Outlook.AppointmentItem
Dim Cell As Range



For Each Cell In Range("A8:A" & Range("A22").End(xlUp).Row)
If Cell.Offset(,10) <> 1 Then ' colonne K
Set MyItem = myOlApp.CreateItem(olAppointmentItem)

With MyItem
.MeetingStatus = olNonMeeting
.Subject = Cell
.Start = Cell.Offset(0, 1)
.Duration = Cell.Offset(0, 2) 'minutes
.Location = Cell.Offset(0, 3)
.Body = Cell.Offset(0, 4)
.Save
.Cell.Offset(, 10) = 1
End With

Set MyItem = Nothing
End If
Next Cell

End Sub
 

asfour

XLDnaute Nouveau
Re : Rendez-vous Outlook via Excel

Bonjour JCGL

Merci pour ton aide.

j'ai essaye mes il me donne l'erreur: Sub ou Fonction non définie
 

Pièces jointes

  • GestionCalendrierOutlook_CreationRDV.xls
    48.5 KB · Affichages: 21
  • GestionCalendrierOutlook_CreationRDV.xls
    48.5 KB · Affichages: 30
  • GestionCalendrierOutlook_CreationRDV.xls
    48.5 KB · Affichages: 39

JCGL

XLDnaute Barbatruc
Re : Rendez-vous Outlook via Excel

Bonjour à tous,

Euh...
Le premier point :

With MyItem .MeetingStatus = olNonMeeting
.Subject = Cell
.Start = Cell.Offset(0, 1)
.Duration = Cell.Offset(0, 2) 'minutes
.Location = Cell.Offset(0, 3)
.Body = Cell.Offset(0, 4)
.Save
Cell.Offset(0, 10) = 1
End With

Capture 1.png

A+ à tous
 

Pièces jointes

  • Capture 1.png
    Capture 1.png
    2.1 KB · Affichages: 52
  • Capture 1.png
    Capture 1.png
    2.1 KB · Affichages: 52
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 321
Messages
2 087 265
Membres
103 501
dernier inscrit
talebafia