Est-ce que quelqu'un connait et pourrait me donner le code vba correspondant
à la fonction "assigner une tâche" (à une autre personne), avec comme éléments
(par exemple): rappel le 25/02/05 et Objet : Réunion.
Merci d'avance
--
géjoun
dam-mail2005@ifrance.com
/Enlever l`année pour m`écrire...
Message monitoré par axinews : http://www.axinews.com
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
Isabelle Prawitz
Bonjour ! Exemple à peine retouché fourni par l'aide Outlook VBA sur la méthode Assign :
Sub AssignTask() Dim myOlApp As New Outlook.Application Dim myItem As Outlook.TaskItem Dim myDelegate As Outlook.Recipient Set myItem = myOlApp.CreateItem(olTaskItem) myItem.Assign Set myDelegate = myItem.Recipients.Add("Dan Wilson") myDelegate.Resolve If myDelegate.Resolved Then myItem.Subject = "Réunion" myItem.DueDate = #2/25/2005# 'échéance myItem.ReminderTime = #2/25/2005 8:00:00 AM# 'Rappel myItem.Display myItem.Send End If End Sub
A+ Isa
"géjoun" a écrit dans le message de news:421b6311$0$8085$
Bonjour,
Est-ce que quelqu'un connait et pourrait me donner le code vba correspondant à la fonction "assigner une tâche" (à une autre personne), avec comme éléments (par exemple): rappel le 25/02/05 et Objet : Réunion.
Merci d'avance!
-- géjoun
/Enlever l`année pour m`écrire.../ Message monitoré par axinews : http://www.axinews.com/
Bonjour !
Exemple à peine retouché fourni par l'aide Outlook VBA sur la méthode Assign :
Sub AssignTask()
Dim myOlApp As New Outlook.Application
Dim myItem As Outlook.TaskItem
Dim myDelegate As Outlook.Recipient
Set myItem = myOlApp.CreateItem(olTaskItem)
myItem.Assign
Set myDelegate = myItem.Recipients.Add("Dan Wilson")
myDelegate.Resolve
If myDelegate.Resolved Then
myItem.Subject = "Réunion"
myItem.DueDate = #2/25/2005# 'échéance
myItem.ReminderTime = #2/25/2005 8:00:00 AM# 'Rappel
myItem.Display
myItem.Send
End If
End Sub
A+
Isa
"géjoun" <dam-mail2005@ifrance.com.invalid> a écrit dans le message de news:421b6311$0$8085$636a15ce@news.free.fr...
Bonjour,
Est-ce que quelqu'un connait et pourrait me donner le code vba correspondant
à la fonction "assigner une tâche" (à une autre personne), avec comme éléments
(par exemple): rappel le 25/02/05 et Objet : Réunion.
Merci d'avance!
--
géjoun
dam-mail2005@ifrance.com
/Enlever l`année pour m`écrire.../
Message monitoré par axinews : http://www.axinews.com/
Bonjour ! Exemple à peine retouché fourni par l'aide Outlook VBA sur la méthode Assign :
Sub AssignTask() Dim myOlApp As New Outlook.Application Dim myItem As Outlook.TaskItem Dim myDelegate As Outlook.Recipient Set myItem = myOlApp.CreateItem(olTaskItem) myItem.Assign Set myDelegate = myItem.Recipients.Add("Dan Wilson") myDelegate.Resolve If myDelegate.Resolved Then myItem.Subject = "Réunion" myItem.DueDate = #2/25/2005# 'échéance myItem.ReminderTime = #2/25/2005 8:00:00 AM# 'Rappel myItem.Display myItem.Send End If End Sub
A+ Isa
"géjoun" a écrit dans le message de news:421b6311$0$8085$
Bonjour,
Est-ce que quelqu'un connait et pourrait me donner le code vba correspondant à la fonction "assigner une tâche" (à une autre personne), avec comme éléments (par exemple): rappel le 25/02/05 et Objet : Réunion.
Merci d'avance!
-- géjoun
/Enlever l`année pour m`écrire.../ Message monitoré par axinews : http://www.axinews.com/
géjoun.
Bonsoir,
Je viens juste de voir ta réponse, merci!
J'essaie ça demain! (et je reviens...surement! ;-) )
-- Géjoun.
/Enlevez l'année pour m'écrire.../
Isabelle Prawitz nous a écrit:
Bonjour ! Exemple à peine retouché fourni par l'aide Outlook VBA sur la méthode Assign :
Sub AssignTask() Dim myOlApp As New Outlook.Application Dim myItem As Outlook.TaskItem Dim myDelegate As Outlook.Recipient Set myItem = myOlApp.CreateItem(olTaskItem) myItem.Assign Set myDelegate = myItem.Recipients.Add("Dan Wilson") myDelegate.Resolve If myDelegate.Resolved Then myItem.Subject = "Réunion" myItem.DueDate = #2/25/2005# 'échéance myItem.ReminderTime = #2/25/2005 8:00:00 AM# 'Rappel myItem.Display myItem.Send End If End Sub
A+ Isa
Bonsoir,
Je viens juste de voir ta réponse, merci!
J'essaie ça demain! (et je reviens...surement! ;-) )
--
Géjoun.
dam-mail2005@ifrance.com
/Enlevez l'année pour m'écrire.../
Isabelle Prawitz nous a écrit:
Bonjour !
Exemple à peine retouché fourni par l'aide Outlook VBA sur la méthode
Assign :
Sub AssignTask()
Dim myOlApp As New Outlook.Application
Dim myItem As Outlook.TaskItem
Dim myDelegate As Outlook.Recipient
Set myItem = myOlApp.CreateItem(olTaskItem)
myItem.Assign
Set myDelegate = myItem.Recipients.Add("Dan Wilson")
myDelegate.Resolve
If myDelegate.Resolved Then
myItem.Subject = "Réunion"
myItem.DueDate = #2/25/2005# 'échéance
myItem.ReminderTime = #2/25/2005 8:00:00 AM# 'Rappel
myItem.Display
myItem.Send
End If
End Sub
J'essaie ça demain! (et je reviens...surement! ;-) )
-- Géjoun.
/Enlevez l'année pour m'écrire.../
Isabelle Prawitz nous a écrit:
Bonjour ! Exemple à peine retouché fourni par l'aide Outlook VBA sur la méthode Assign :
Sub AssignTask() Dim myOlApp As New Outlook.Application Dim myItem As Outlook.TaskItem Dim myDelegate As Outlook.Recipient Set myItem = myOlApp.CreateItem(olTaskItem) myItem.Assign Set myDelegate = myItem.Recipients.Add("Dan Wilson") myDelegate.Resolve If myDelegate.Resolved Then myItem.Subject = "Réunion" myItem.DueDate = #2/25/2005# 'échéance myItem.ReminderTime = #2/25/2005 8:00:00 AM# 'Rappel myItem.Display myItem.Send End If End Sub
A+ Isa
géjoun
Salut, me revoila... (et pas pour rien! ;-) )
J'ai testé le code que tu m'as fourni pour assigner une tache en VBA, et apparement, le principe m'irait; je l'ai modifié comme ceci :
Sub AssignTask() Dim myOlApp As New Outlook.Application Dim myItem As Outlook.TaskItem Dim myDelegate As Outlook.Recipient Set myItem = myOlApp.CreateItem(olTaskItem) myItem.Assign Set myDelegate = myItem.Recipients.Add("NOM Prénom") myDelegate.Resolve If myDelegate.Resolved Then myItem.Subject = "CDE - " & Range("j2") & " 0" & Range("k6") & " - " & Range("b10") & " " & Range("h7") 'Objet" myItem.DueDate = Range("e12") 'échéance myItem.ReminderTime = True 'Rappel myItem.Display myItem.Send End If End Sub
Avant de partir dans les détails, j'explique ce que je cherche à faire :
Je cherche ce code pour l'intégrer à un fichier Excel afin de pouvoir créer des rappels à partir d'éléments définis de ma feuille de calcul.
Sur le forum excel, on m'avait déja donné un code qui fonctionne trés bien pour créer des tâches sur mon poste, donc je voudrais pouvoir faire la même chose, sauf que ce serait pour assigner des taches à mon colègue.
Le code que j'utilise pour me créer des taches est le suivant :
Sub Creer_TacheOutlook() ' Dimensionner l'objet Outlook Dim oOutlook As Outlook.Application ' Dimensionner la tâche Dim oTache As TaskItem If Range("m12") Then ' Initialiser l'objet Outlook Set oOutlook = CreateObject("Outlook.Application") ' Créer la tâche Set oTache = oOutlook.CreateItem(olTaskItem) ' Affecter les propriétés à la tâche With oTache .DueDate = Range("n3") ' Echéance .Subject = "CDE - " & Range("j2") & " 0" & Range("k6") & " - " & Range("b10") & " " & Range("h7") 'Objet LeTexte = "" For i = 16 To 67 If Range("c" & i) <> "" Then LeTexte = LeTexte & Range("c" & i) & " " & Range("d" & i) & " -> " & Range("j" & i) & " €" & vbNewLine Next .Body = LeTexte & vbNewLine & Range("j68") & " " & Range("k68") & " €" & vbNewLine & vbNewLine & vbNewLine & vbNewLine & Range("n2") ' texte explicatif" .ReminderSet = True .Save ' Enregistrer la nouvelle tâche End With ' vider les objets pour libérer la mémoire Set oTache = Nothing Set oOutlook = Nothing End If End Sub
Or, je ne comprends pas tout dans le code que tu m'as fourni par rapport à celui que je possède :
Par exemple, quel est la différence entre ces 2 paramêtres?
car je voudrais simplement qu'un rappel s'active le jour défini par myItem.DueDate, je pensais que myItem.ReminderTime permettait d'activer ce rappel à une date, mais apparement ça ne fonctionne pas.
D'autre part, est-il possible d'assigner la tâche sans avoir le message d'avertissement 'un autre programme tente d'accéder...etc...' et devoir cliquer dans plusieurs boites de dialogue avant l'envoi de celle-ci? De façon à ce que lorsqu'on exécute la macro, la tache parte directement sans aucun avertissement? (j'ai fait des recherches dans les archives, et j'ai trouvé un sujet qui expliquait que pour les emails, en remplacant CreateObject par GetObject; ça pouvait éviter ces boites de dialogue; est-ce applicable ici?
Et comment faire pour appliquer les éléments de la 1ère macro à la 2ème? (pour le 'myItem.subject' de la tache par exemple, car à partir de 'Le texte = "" ' de la 1ère macro, je ne suis pas arrivé à l'adapter à celle que tu m'as fourni).
En fait, je me demande si il ne serait pas plus simple d'adapter la 1ère macro de façon à pouvoir l'utiliser pour assigner des tâches à d'autres personnes, ça ne serait pas plus facile?
D'avance, merci!
Salut, me revoila... (et pas pour rien! ;-) )
J'ai testé le code que tu m'as fourni pour assigner une tache en VBA, et
apparement, le principe m'irait; je l'ai modifié comme ceci :
Sub AssignTask()
Dim myOlApp As New Outlook.Application
Dim myItem As Outlook.TaskItem
Dim myDelegate As Outlook.Recipient
Set myItem = myOlApp.CreateItem(olTaskItem)
myItem.Assign
Set myDelegate = myItem.Recipients.Add("NOM Prénom")
myDelegate.Resolve
If myDelegate.Resolved Then
myItem.Subject = "CDE - " & Range("j2") & " 0" & Range("k6") & " - " &
Range("b10") & " " & Range("h7") 'Objet"
myItem.DueDate = Range("e12") 'échéance
myItem.ReminderTime = True 'Rappel
myItem.Display
myItem.Send
End If
End Sub
Avant de partir dans les détails, j'explique ce que je cherche à faire :
Je cherche ce code pour l'intégrer à un fichier Excel afin de pouvoir créer
des rappels à partir d'éléments définis de ma feuille de calcul.
Sur le forum excel, on m'avait déja donné un code qui fonctionne trés bien
pour créer des tâches sur mon poste, donc je voudrais pouvoir faire la même
chose, sauf que ce serait pour assigner des taches à mon colègue.
Le code que j'utilise pour me créer des taches est le suivant :
Sub Creer_TacheOutlook()
' Dimensionner l'objet Outlook
Dim oOutlook As Outlook.Application
' Dimensionner la tâche
Dim oTache As TaskItem
If Range("m12") Then
' Initialiser l'objet Outlook
Set oOutlook = CreateObject("Outlook.Application")
' Créer la tâche
Set oTache = oOutlook.CreateItem(olTaskItem)
' Affecter les propriétés à la tâche
With oTache
.DueDate = Range("n3") ' Echéance
.Subject = "CDE - " & Range("j2") & " 0" & Range("k6") & " - " &
Range("b10") & " " & Range("h7") 'Objet
LeTexte = ""
For i = 16 To 67
If Range("c" & i) <> "" Then LeTexte = LeTexte & Range("c" & i) & "
" & Range("d" & i) & " -> " & Range("j" & i) & " €" & vbNewLine
Next
.Body = LeTexte & vbNewLine & Range("j68") & " " & Range("k68") & "
€" & vbNewLine & vbNewLine & vbNewLine & vbNewLine & Range("n2") ' texte
explicatif"
.ReminderSet = True
.Save ' Enregistrer la nouvelle tâche
End With
' vider les objets pour libérer la mémoire
Set oTache = Nothing
Set oOutlook = Nothing
End If
End Sub
Or, je ne comprends pas tout dans le code que tu m'as fourni par rapport à
celui que je possède :
Par exemple, quel est la différence entre ces 2 paramêtres?
car je voudrais simplement qu'un rappel s'active le jour défini par
myItem.DueDate, je pensais que myItem.ReminderTime permettait d'activer ce
rappel à une date, mais apparement ça ne fonctionne pas.
D'autre part, est-il possible d'assigner la tâche sans avoir le message
d'avertissement 'un autre programme tente d'accéder...etc...' et devoir
cliquer dans plusieurs boites de dialogue avant l'envoi de celle-ci? De façon
à ce que lorsqu'on exécute la macro, la tache parte directement sans aucun
avertissement? (j'ai fait des recherches dans les archives, et j'ai trouvé un
sujet qui expliquait que pour les emails, en remplacant CreateObject par
GetObject; ça pouvait éviter ces boites de dialogue; est-ce applicable ici?
Et comment faire pour appliquer les éléments de la 1ère macro à la 2ème?
(pour le 'myItem.subject' de la tache par exemple, car à partir de 'Le texte
= "" ' de la 1ère macro, je ne suis pas arrivé à l'adapter à celle que tu
m'as fourni).
En fait, je me demande si il ne serait pas plus simple d'adapter la 1ère
macro de façon à pouvoir l'utiliser pour assigner des tâches à d'autres
personnes, ça ne serait pas plus facile?
J'ai testé le code que tu m'as fourni pour assigner une tache en VBA, et apparement, le principe m'irait; je l'ai modifié comme ceci :
Sub AssignTask() Dim myOlApp As New Outlook.Application Dim myItem As Outlook.TaskItem Dim myDelegate As Outlook.Recipient Set myItem = myOlApp.CreateItem(olTaskItem) myItem.Assign Set myDelegate = myItem.Recipients.Add("NOM Prénom") myDelegate.Resolve If myDelegate.Resolved Then myItem.Subject = "CDE - " & Range("j2") & " 0" & Range("k6") & " - " & Range("b10") & " " & Range("h7") 'Objet" myItem.DueDate = Range("e12") 'échéance myItem.ReminderTime = True 'Rappel myItem.Display myItem.Send End If End Sub
Avant de partir dans les détails, j'explique ce que je cherche à faire :
Je cherche ce code pour l'intégrer à un fichier Excel afin de pouvoir créer des rappels à partir d'éléments définis de ma feuille de calcul.
Sur le forum excel, on m'avait déja donné un code qui fonctionne trés bien pour créer des tâches sur mon poste, donc je voudrais pouvoir faire la même chose, sauf que ce serait pour assigner des taches à mon colègue.
Le code que j'utilise pour me créer des taches est le suivant :
Sub Creer_TacheOutlook() ' Dimensionner l'objet Outlook Dim oOutlook As Outlook.Application ' Dimensionner la tâche Dim oTache As TaskItem If Range("m12") Then ' Initialiser l'objet Outlook Set oOutlook = CreateObject("Outlook.Application") ' Créer la tâche Set oTache = oOutlook.CreateItem(olTaskItem) ' Affecter les propriétés à la tâche With oTache .DueDate = Range("n3") ' Echéance .Subject = "CDE - " & Range("j2") & " 0" & Range("k6") & " - " & Range("b10") & " " & Range("h7") 'Objet LeTexte = "" For i = 16 To 67 If Range("c" & i) <> "" Then LeTexte = LeTexte & Range("c" & i) & " " & Range("d" & i) & " -> " & Range("j" & i) & " €" & vbNewLine Next .Body = LeTexte & vbNewLine & Range("j68") & " " & Range("k68") & " €" & vbNewLine & vbNewLine & vbNewLine & vbNewLine & Range("n2") ' texte explicatif" .ReminderSet = True .Save ' Enregistrer la nouvelle tâche End With ' vider les objets pour libérer la mémoire Set oTache = Nothing Set oOutlook = Nothing End If End Sub
Or, je ne comprends pas tout dans le code que tu m'as fourni par rapport à celui que je possède :
Par exemple, quel est la différence entre ces 2 paramêtres?
car je voudrais simplement qu'un rappel s'active le jour défini par myItem.DueDate, je pensais que myItem.ReminderTime permettait d'activer ce rappel à une date, mais apparement ça ne fonctionne pas.
D'autre part, est-il possible d'assigner la tâche sans avoir le message d'avertissement 'un autre programme tente d'accéder...etc...' et devoir cliquer dans plusieurs boites de dialogue avant l'envoi de celle-ci? De façon à ce que lorsqu'on exécute la macro, la tache parte directement sans aucun avertissement? (j'ai fait des recherches dans les archives, et j'ai trouvé un sujet qui expliquait que pour les emails, en remplacant CreateObject par GetObject; ça pouvait éviter ces boites de dialogue; est-ce applicable ici?
Et comment faire pour appliquer les éléments de la 1ère macro à la 2ème? (pour le 'myItem.subject' de la tache par exemple, car à partir de 'Le texte = "" ' de la 1ère macro, je ne suis pas arrivé à l'adapter à celle que tu m'as fourni).
En fait, je me demande si il ne serait pas plus simple d'adapter la 1ère macro de façon à pouvoir l'utiliser pour assigner des tâches à d'autres personnes, ça ne serait pas plus facile?