OVH Cloud OVH Cloud

création de plusieurs taches dans Outlook

2 réponses
Avatar
Cath
Bonjour,

J'ai besoin de créer des taches dans Outlook.
J'ai récupérer tout ce que je pouvais dans le forum mais j'ai encore un souci.
Mon programme doit créer une tache à chaque fois que la zone "Envoyé"(la
cellule active) est remplie
Voici mon code avec une boucle Do while. Merci pour votre aide.

Sub CreateTask()

Dim olApp As Outlook.Application
Dim olTsk As TaskItem
Dim olDeg As Recipient

Set olApp = Outlook.Application
Set olTsk = olApp.CreateItem(olTaskItem)

Range("B2").Select

Do While ActiveCell <> Empty

If ActiveCell(8) = "" Then

With olTsk
.Subject = ActiveCell(4) 'objet'
.Importance = olImportanceHigh
.DueDate = ActiveCell(2) 'échéance'
.StartDate = DateValue("11/15/03") 'début'
.Categories = ActiveCell(5) 'catégorie'
.ReminderSet = True 'Rappel le jour J à 8h00'
.Save
End With

End If

Set olTsk = Nothing
Set olApp = Nothing

ActiveCell(1, 2).Select
Loop

End Sub

2 réponses

Avatar
JLuc
*Bonjour Cath*,
J'ai tester ton code, il fonctionne parfaitement (quoi que j'ai pas
compris comment marchait le .DueDate). Pour qu'il se lance quand tu vas
sur la cellule B2, j'ai mis ca dans le code de la feuille concernee :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("B2")) Is Nothing Then
CreateTask
End If
End Sub
Le seul petit probleme, c'est que des que je vais sur cette cellule, la
macro s'execute. J'ai encore pas tout compris (encore une :oÞ )comment
ca marchais, mais je cherche, je cherche...

Il y en a pas mal, des choses que j'ai pas compris, l'important c'est
de chercher, pas de trouver (enfin si, c'est quand meme une recompence
:'))
Mais j'espere que ca t'aidera pour avancer un peu plus loin dans ce que
tu fais ;-)
A+
Bonjour,

J'ai besoin de créer des taches dans Outlook.
J'ai récupérer tout ce que je pouvais dans le forum mais j'ai encore un
souci. Mon programme doit créer une tache à chaque fois que la zone
"Envoyé"(la cellule active) est remplie
Voici mon code avec une boucle Do while. Merci pour votre aide.

Sub CreateTask()

Dim olApp As Outlook.Application
Dim olTsk As TaskItem
Dim olDeg As Recipient

Set olApp = Outlook.Application
Set olTsk = olApp.CreateItem(olTaskItem)

Range("B2").Select

Do While ActiveCell <> Empty

If ActiveCell(8) = "" Then

With olTsk
.Subject = ActiveCell(4) 'objet'
.Importance = olImportanceHigh
.DueDate = ActiveCell(2) 'échéance'
.StartDate = DateValue("11/15/03") 'début'
.Categories = ActiveCell(5) 'catégorie'
.ReminderSet = True 'Rappel le jour J à 8h00'
.Save
End With

End If

Set olTsk = Nothing
Set olApp = Nothing

ActiveCell(1, 2).Select
Loop

End Sub



--
JLuc

Pensez a regarder ces sites très bien fait, ce sont des mines de trucs
et astuces !
http://www.excelabo.net
http://jacxl.free.fr/
http://dj.joss.free.fr/
C:Program FilesMicrosoft OfficeOffice1036VBALIST.XLS

Avatar
Cath
Bonjour,

Merci pour la réponse.

Comme cela concerne toutes les feuilles du classeur.

Cela ne fonctionne pas pour moi, la macro ne crée que la 1ére tache et après
bug.





*Bonjour Cath*,
J'ai tester ton code, il fonctionne parfaitement (quoi que j'ai pas
compris comment marchait le .DueDate). Pour qu'il se lance quand tu vas
sur la cellule B2, j'ai mis ca dans le code de la feuille concernee :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("B2")) Is Nothing Then
CreateTask
End If
End Sub
Le seul petit probleme, c'est que des que je vais sur cette cellule, la
macro s'execute. J'ai encore pas tout compris (encore une :oÞ )comment
ca marchais, mais je cherche, je cherche...

Il y en a pas mal, des choses que j'ai pas compris, l'important c'est
de chercher, pas de trouver (enfin si, c'est quand meme une recompence
:'))
Mais j'espere que ca t'aidera pour avancer un peu plus loin dans ce que
tu fais ;-)
A+
Bonjour,

J'ai besoin de créer des taches dans Outlook.
J'ai récupérer tout ce que je pouvais dans le forum mais j'ai encore un
souci. Mon programme doit créer une tache à chaque fois que la zone
"Envoyé"(la cellule active) est remplie
Voici mon code avec une boucle Do while. Merci pour votre aide.

Sub CreateTask()

Dim olApp As Outlook.Application
Dim olTsk As TaskItem
Dim olDeg As Recipient

Set olApp = Outlook.Application
Set olTsk = olApp.CreateItem(olTaskItem)

Range("B2").Select

Do While ActiveCell <> Empty

If ActiveCell(8) = "" Then

With olTsk
.Subject = ActiveCell(4) 'objet'
.Importance = olImportanceHigh
.DueDate = ActiveCell(2) 'échéance'
.StartDate = DateValue("11/15/03") 'début'
.Categories = ActiveCell(5) 'catégorie'
.ReminderSet = True 'Rappel le jour J à 8h00'
.Save
End With

End If

Set olTsk = Nothing
Set olApp = Nothing

ActiveCell(1, 2).Select
Loop

End Sub



--
JLuc

Pensez a regarder ces sites très bien fait, ce sont des mines de trucs
et astuces !
http://www.excelabo.net
http://jacxl.free.fr/
http://dj.joss.free.fr/
C:Program FilesMicrosoft OfficeOffice1036VBALIST.XLS