salut tous les mondes
je suis un débutant dans ce langage et j'ai besoin de vos aides pour atteindre mon objectif
bon
j'ai créé un gestion de maintenance sur Excel 2007, gestion de Taches avec dates de début et dates de fin. Ces taches, je voudrais quelles me soient envoyées
certains jours avant la date limite de réalisation. j'ai donc créer une fonction dans la colonne E qui m'affiche « attention ,date dépassée » (comme Alerte) lorsqu'il me reste des jours avant la date finale de réalisation.
Je souhaite que lorsque « attention ,date depassée » apparait en cellule E5 à Exxx,(Range) un e_mail me soit envoyé avec dans le corps du mail:
la description de la tache => colonne F (première cellule F7) « feuille de suivi »
remarque que j’ai deux feuille dans ce classeur et le travail de mail dans le feuille de suivi
je sais pas est ce que la declaration de sheet correcte ou ou non
ce code sa marcha pas je sais pas erreur de compilation ou’est le probléme
Private Sub Worksheet_Activate()
Sub activateSheet(sheetname As String)
'activates sheet of specific name
Worksheets("feuille de suivi").Activate
End Sub
Sub Mail_small_Text_Outlook()
'Working in Office 2000-2010
Dim OutApp As Object
Dim OutMail As Object
Dim strbody As String
Dim L As Integer 'Déclaration de variable "L" pour connaitre la Ligne Numéro
Dim cellule As Range
Dim i As Integer
'ici je repère la dernière ligne vide pour la Collections des données
L = Range("B65536").End(xlUp).Row + 1
'on met la cellule en F5
Set cellule = ActiveWorkbook.Sheets(0).Range("F5")
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
i = 0
'on fait la boucle en imaginant que F5 est toujours remplis
While cellule.Offset(i, 0).Value <> ""
If cellule.Offset(i, 20).Value = "Attention, date dépasée" Then
strbody = "description : " & cellule.Offset(i, 0).Value & vbCrLf
End If
Wend
With OutMail
.To = "mounir_kraim@hotmail.com"
.CC = ""
.BCC = ""
.Subject = "Avertissement sur Tâche"
.Body = strbody
'You can add a file like this
'.Attachments.Add ("C:\test.txt")
.Send 'or use .Display
End With
On Error GoTo 0
Set OutMail = Nothing
Set OutApp = Nothing
End Sub