MACRO A REPETER SUR LIGNES INFERIEURES
CHRISTOF26
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
CHRISTOF26 Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
CHRISTOF26 Messages postés 3 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous. Votre forum m'aide très souvent merciiii
aujourd'hui, j'ai créé une macro qui créé une alerte outlook en prenant en compte la date et l'heure de mon rappel mis dans une cellule et en reprenant le nom de mon prospect à suivre.
ca marche pour ma première ligne. Seulement, je voulais répéter cette macro sur toutes les lignes en dessous.
Dans ma macro, j'ai "figé" les 2 cellules ou je dois chercher l'info : N5 pour date et A5 pour nom prospect. Je voudrai par défaut que pour la ligne suivante N5 devienne N6 et A5 devienne A6 etc... Euh... Suis je assez clair ? voici ma macro.
Sub AjoutTache()
Dim OlApp As Object
Dim NS As Object, ObjTask As Object
Set OlApp = CreateObject("Outlook.Application")
Set NS = OlApp.GetNamespace("MAPI")
Set ObjTask = OlApp.CreateItem(olTaskItem)
With ObjTask
.Subject = [A5]
'.Body = "texte"
.ReminderTime = [N5]
.ReminderSet = True
.Display 'mettre en commentaire après mise au point
End With
ObjTask.Save
End Sub
Merci pour toute aide
Christophe B
aujourd'hui, j'ai créé une macro qui créé une alerte outlook en prenant en compte la date et l'heure de mon rappel mis dans une cellule et en reprenant le nom de mon prospect à suivre.
ca marche pour ma première ligne. Seulement, je voulais répéter cette macro sur toutes les lignes en dessous.
Dans ma macro, j'ai "figé" les 2 cellules ou je dois chercher l'info : N5 pour date et A5 pour nom prospect. Je voudrai par défaut que pour la ligne suivante N5 devienne N6 et A5 devienne A6 etc... Euh... Suis je assez clair ? voici ma macro.
Sub AjoutTache()
Dim OlApp As Object
Dim NS As Object, ObjTask As Object
Set OlApp = CreateObject("Outlook.Application")
Set NS = OlApp.GetNamespace("MAPI")
Set ObjTask = OlApp.CreateItem(olTaskItem)
With ObjTask
.Subject = [A5]
'.Body = "texte"
.ReminderTime = [N5]
.ReminderSet = True
.Display 'mettre en commentaire après mise au point
End With
ObjTask.Save
End Sub
Merci pour toute aide
Christophe B
A voir également:
- MACRO A REPETER SUR LIGNES INFERIEURES
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Jitbit macro recorder - Télécharger - Confidentialité
- Aller à la ligne excel - Guide
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Macro word - Guide
4 réponses
Salut,
Y'a combien de ligne en dessous ?
Si on fait une boucle il faut un facteur d'arrêt.
Soit 20 lignes et on s'arrête,
Soit tant que la ligne du dessous n'est pas vide.
Est-ce que, quand A20 imaginons est vide alors ta création s'arrête là.
Soit de A5 à A19, on crée et comme A20 est vide alors on sort de la boucle.
Y'a combien de ligne en dessous ?
Si on fait une boucle il faut un facteur d'arrêt.
Soit 20 lignes et on s'arrête,
Soit tant que la ligne du dessous n'est pas vide.
Est-ce que, quand A20 imaginons est vide alors ta création s'arrête là.
Soit de A5 à A19, on crée et comme A20 est vide alors on sort de la boucle.
Bonjour, merci de ta réponse.
après ma 1ere ligne, en ai encore 19 autre puis plus rien.
Comment faire une boucle ?
après ma 1ere ligne, en ai encore 19 autre puis plus rien.
Comment faire une boucle ?
J'ai essayer quelque chose mais comme je peux pas tester le code, je sais pas ce que ça va donner mais le principe est là :
Ou si le premier code ne fonctionne pas
Ici, la boucle For va être répété 20 fois avant de s'arrêter.
Et la cellule sera donc en premier lieu A5 -> Range("A" & i&)
Puis au second passage alors comme i est incrémenter la cellule sera alors A6, de même pour N.
Et ainsi de suite jusqu'à 25
1f u c4n r34d th1s u r34lly n33d t0 g37 l41d !
Sub AjoutTache() Dim OlApp As Object Dim NS As Object, ObjTask As Object Dim i As Integer Set OlApp = CreateObject("Outlook.Application") Set NS = OlApp.GetNamespace("MAPI") Set ObjTask = OlApp.CreateItem(olTaskItem) For i = 5 To 24 With ObjTask .Subject = Range("A" & i&) '.Body = "texte" .ReminderTime = Range("N" & i&) .ReminderSet = True .Display 'mettre en commentaire après mise au point End With ObjTask.Save Next End Sub
Ou si le premier code ne fonctionne pas
Sub AjoutTache() Dim OlApp As Object Dim NS As Object, ObjTask As Object Dim i As Integer Set OlApp = CreateObject("Outlook.Application") Set NS = OlApp.GetNamespace("MAPI") Set ObjTask = OlApp.CreateItem(olTaskItem) For i = 5 To 24 With ObjTask .Subject = [A&i] '.Body = "texte" .ReminderTime = [N&i] .ReminderSet = True .Display 'mettre en commentaire après mise au point End With ObjTask.Save Next End Sub
Ici, la boucle For va être répété 20 fois avant de s'arrêter.
Et la cellule sera donc en premier lieu A5 -> Range("A" & i&)
Puis au second passage alors comme i est incrémenter la cellule sera alors A6, de même pour N.
Et ainsi de suite jusqu'à 25
1f u c4n r34d th1s u r34lly n33d t0 g37 l41d !