Inclure un model dans le .body fonction sendmail Urgent!!!

Mrexcel

XLDnaute Nouveau
Bonjour à TOUS;

serai-il possible de m'aider SVP

Détails: En faite j'ai un fichier excel permettant de faire le suivi absentéisme de tous les employés que je rempli manuellment, sachant que je dois envoyé une lettre de mise en demeure si la durée d'absence est supérieur ou = 3 jours.
donc comme exemple si l'employé "David" est absent 11/10,12/10 et 13/10 alors le 13/10 je dois automatiquement envoyé la lettre, s'il reprend son poste le 13/10 donc c bon pas de lettre à envoye.

donce je me demande si c'est possible que outlook prenne en charge automaquement le mail de la mise en demeure en fonction du fichier excel selon la regle de absence = 3jours donc envoi de mail.

Ci-joint un bout de fichier
Donc comment faire pour pour envoyé un mail ou au moin créer un rappel sur outlook en se basant sur le suivi absence de NOM9



Merci d'avance.
 

Pièces jointes

  • Suiv absence.xlsx
    10.3 KB · Affichages: 105

suistrop

XLDnaute Impliqué
Re : Publipostage

Salut, a ta place je ferai 1 colonne avec vrai ou faux si y a absence de 3 jours d affilés, et je filtrerait sur cette colonne ensuite tu fais tes mails à la mimine.
Ce que tu demandes existent mais c est pas evident à mettre en place ...
 

Mrexcel

XLDnaute Nouveau
Re : Publipostage

Bonjour à tous,

merci beaucoups Suistrop pour ta réponse et ton implication, c trés apprécié
pour Suistrop: ça sera quoi comme formule stp?

Pour le forum: Esque quelqu'un peut m'aider pour réaliser ça : si vrai = envoie de mail ou bien rappel sur outlook

Merci d'avance les experts.
 

Mrexcel

XLDnaute Nouveau
Re : Publipostage

reboujour à tous et à toutes

je viens de trouver une bonne méthode pour envoyer les mail à travers excel et c'est le sendmail en vba

voila ce que j(ai pu mettre en place

Private Sub CommandButton1_Click()
sendemail
End Sub

Public Function sendemail()
On Error GoTo ende
esubject = "Lettre de mise en demeure"
sendto = "y.abidi@teleperformance.fr"
ccto = "y.abidi@teleperformance.fr"
ebody = "Bonjour" & " " & " " & "merci d'envoyer une lettre de mise en demeure pour l'agent (Abidi Yosri)" & " " & " " & "Merci d'avance"
newfilename = "C:\Users\Yosri\Desktop"

Set app = CreateObject("Outlook.Application")
Set itm = app.createitem(0)

With itm
.Subject = esubject
.to = sendto
.cc = ccto
.body = ebody
.attachment.Add (newfilename)
.display
.send
End With
Set app = Nothing
Set itm = Nothing

ende:

End Function















avec ça j'arrive à envoyer mes mail sans prob
mail esque je peux ajouter la condition sendemail en fonction d'un resultat d'une cellule?

SVP, je rame la.
 

Pierrot93

XLDnaute Barbatruc
Re : sendmail en VBA avec condition Urgent!!!

Bonjour,

regarde ceci, test sur le contenu de la cellule A1 de la feuille active :
Code:
Private Sub CommandButton1_Click()
If Range("A1").Value = "xxx" Then sendemail
End Sub
bonne journée
@+
 

Mrexcel

XLDnaute Nouveau
Re : sendmail en VBA avec condition Urgent!!!

MERCI beaucoups PIERROT93 pour cette réponse

donce voila la macro après modification

maintenant stp comment faire pour pour inclure un model de mail dans le body du mail?

sinon comment inclure une signature?
et pour le body quand comment séparer les ligne exemple:
ligne1 = bonjour
ligne2 = vide
ligne3 = Merci d'envoyer..........
ligne4 = Merci d'avance

Merci d'avance


Private Sub CommandButton1_Click()
If Range("K12").Value = "Vrai" Then sendmail
End Sub
Sub sendmail()
Dim OutApp As Object
Dim OutMail As Object

Set OutApp = CreateObject("Outlook.Application")
OutApp.Session.Logon
Set OutMail = OutApp.CreateItem(0)

On Error GoTo ende
With OutMail
.To = "y.abidi@teleperformance.fr"
.cc = ""
.BCC = ""
.Subject = "Lettre de mise en demeure" & Format(Date, "dd/mmm/yy")
.Body = "Bonjour" & " " & "Merci d'envoyer ue lettre de mise en demeure pour l'agent xxx" & "Merci d'avance"
.attachments.Add ActiveWorkbook.FullName
'You can add other files also like this
'.Attachments.Add ("C:\test.txt")
.Display 'or use .Send
.send
End With
On Error GoTo 0

Set OutMail = Nothing
Set OutApp = Nothing
ende:
End Sub
 

Mrexcel

XLDnaute Nouveau
Re : sendmail en VBA avec condition Urgent!!!

Merci énormément pour cette réponse , ça repond à ma question

maintenant STP une dernière question: comment faire pour inclure un model de mail dans le body du mail comme ça je il suffit de créer un model avec le message et la sugnature à la fois et ça sera trés pratique .


j'éspèr que c fesable

merciiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii d'avance
 

Mrexcel

XLDnaute Nouveau
Re : Inclure un model dans le .body fonction sendmail Urgent!!!

Bonjour le FORUM


Je suis de retour puisque mon prolème existe toujours:

je viens de trouver un bon code qui sera bénifique pour nous tous je pense ( c'est un code qui permet dinclure dans le body du mail une image temporaire donc text et signature avec image).

Maintenant le problème et que ce code fonctionne avec office 2003 et je me demande si l'un des experts pourra nous aider à adapter ce code avec office 2007

soyez sur que j'ai deja essayer mais vu mon niveau...


VOTRE AIDE SERA TRES APPRECIE
MERCI D'AVANCE



Const Img_temp As String = "Monrépertoire\sens_interdit.jpg"

Sub Envoi_Documents()
'Utilise la liaison anticipée
'Requiert une référence à la bibliothèque d'objets Outlook
Dim Applic_Outlook As Outlook.Application
Dim MonItem As Outlook.MailItem
Dim Document As Range
Dim Objet_Mail As String
Dim Adresse_Mail As String

Sheets("Mail").Visible = True
Sheets("Mail").Select

Application.ScreenUpdating = True
'Quadrillage
ActiveWindow.DisplayGridlines = False

'Crée l'objet Outlook
Set Applic_Outlook = New Outlook.Application

'Parcourt en boucle les lignes
For Each Document In Sheets("Mail").Range("pièces")

[corps_message_1] = Document.Offset(0, 3)
[corps_message_2] = Document.Offset(0, 4)

'Obtenir les données
Objet_Mail = Document.Offset(0, -1)
Adresse_Mail = Document.Offset(0, -3)


'Créer l'élément de mail et le transmettre
Set MonItem = Applic_Outlook.CreateItem(olMailItem)
With MonItem
.To = Adresse_Mail
.Subject = Objet_Mail
If Not IsEmpty(Document.Offset(0, -2)) Then .CC = Document.Offset(0, -2)
.Categories = "Daily"
.Attachments.Add Document
For I = 1 To 2
If Not IsEmpty(Document.Offset(0, I)) Then
Fichier_joint = "Monrépertoire\" & Document.Offset(0, I).Value
.Attachments.Add Fichier_joint
End If
Next
If Not IsEmpty(Adresse_Mail_CC) Then _
.CC = Adresse_Mail_CC
.Display
End With

'copie du corps de texte dans le corps de message
Call Plage_Mail

Application.Wait (Now + TimeValue("0:00:01"))
AppActivate Objet_Mail & " - Message", 0 ' Active Outlook
Application.Wait (Now + TimeValue("0:00:01"))
SendKeys "^v", True ' coller
Application.Wait (Now + TimeValue("0:00:01"))
SendKeys "%v", True ' Envoi du message
Application.CutCopyMode = False
Next

Set Applic_Outlook = Nothing

ActiveWindow.DisplayGridlines = True

End Sub

Sub Plage_Mail()
Call Image_Temporaire
End Sub

Sub Image_Temporaire(Optional dummy As Byte)
Dim cellule_corp As Range
Dim image_chart As ChartObject
Set cellule_corp = Range("corps_1")
cellule_corp.CopyPicture xlScreen, xlBitmap
With cellule_corp
Set image_chart = ActiveSheet.ChartObjects.Add( _
.Left, .Top, .Width + 5, .Height + 5)
End With
With image_chart.Chart
.Paste
.Export Filename:=Img_temp
End With
image_chart.Delete
Set image_chart = Nothing
Set cellule_corp = Nothing
End Sub
 
Dernière édition:

Statistiques des forums

Discussions
312 198
Messages
2 086 114
Membres
103 121
dernier inscrit
SophieS