Macro : Envoyer un mail après modification d'un fichier

samsystemed

XLDnaute Nouveau
Bonjour,

J'ai un classeur excel 2010 contenant 5 onglets (tous protégés par un mot de passe avec des plages de cellules modifiables).

Mon 1er onglet contient des liens qui envoi vers les tableaux des 4 autres onglets.

pour ce fichier, j'avais 2 souhaits :

le 1er : ouvrir le fichier toujours sur le 1er onglet.
Alors j'ai inscris :
Private Sub Workbook_Open()
Sheets("PLAN").Select
End Sub

et ca marche !! youpi !!:p:p

le 2nd : recevoir un mail via Outlook à chaque fois que le fichier sera modifié.

Alors j'ai inscris :
Sub EnvoiMail()
Workbooks(ThisWorkbook).SendMail Recipients:="l.jounot@sequano.fr", _
Subject:="Photocopieurs", _
ReturnReceipt:=True
End Sub


mais cette macro ne fonctionne pas :confused:

(les deux macro sont ecrites a la suite dans la partie "ThisWorkbook")

est-ce que quelqu'un peut m'aider à la faire fonctionner s'il vous plait?
J'aimerai aussi ajouter un texte au mail "Le fichier a été modifié".

merci d'avance,
Sam
 

samsystemed

XLDnaute Nouveau
Re : Macro : Envoyer un mail après modification d'un fichier

il y a vraiment personnes qui peut m'aider ? snif !!

j'ai essayé d'une autre manière.
en insérant un bouton sur chaque feuille

et en donnant cette macro au bouton :


Private Sub CommandButton1_Click()

Sub EnvoiMail()
Application.DisplayAlerts = False
ThisWorkbook.SendMail Recipients:="l.jounot@sequano.fr", _
Subject:="Photocopieurs", _
ReturnReceipt:=True
End Sub

End Sub



le problème est qu'il l'a refuse avant le message

erreur de compilation
End Sub attentdu


je ne saipas comment lui dire que cette macro conserne le bouton.

aidez-moi s'il vous plait
 

Hulk

XLDnaute Barbatruc
Re : Macro : Envoyer un mail après modification d'un fichier

Hello,

D'abord tu modifies ta macro "EnvoiMail" comme ceci
Code:
Sub EnvoiMail()

    ThisWorkbook.SendMail Recipients:="l.jounot@sequano.fr", _
    Subject:="Photocopieurs", ReturnReceipt:=True

End Sub
Ensuite tu cliques-droit sur ThisWorkBook et tu inséres un module (pas un module de classe).

Après, tu colles la macro "EnvoiMail" dans le module que tu as inséré, puis dans la feuille "PLAN" ou où tu veux, tu mets un bouton avec lequel tu appelles la macro "EnvoiMail" comme ceci
Code:
Private Sub CommandButton1_Click()

    Call EnvoiMail

End Sub
Espérant t'avoir aidé.
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 371
Messages
2 087 698
Membres
103 644
dernier inscrit
bsalah