Macro sous Excel envoi de fichier par mail

Résolu
domino40 -  
gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Rappel du 1er message

Je souhaite envoyer par mail un classeur sous exel en pièce jointe.
J'ai testécette macro:

Sub EnvoiMail()
Workbooks("mon fichier").SendMail Recipients:="mondestinataire@FAI.fr", _
Subject:="Test envoi classeur", _
ReturnReceipt:=True
End Sub

Est possible qu'une macro puisse pomper l'adresse de mon destinataire dans une cellule de mon classeur actif, car dans cette macro, le destinataire est en dur sur la macro.

Merci d'avance

Configuratio

Merci pour votre réponse efficace et rapide.

Ca marche c'est génial quand j'utilise

ActiveWorkbook.SendMail Recipients:=range("A1").value, _

Mais quand j'utilise

Workbooks("chemin d'un autre fichier qui en réalité le même fichier mais qui a été enregistré sous un autre nom").SendMail Recipients:="adresseEmail", _

Lorsque j'exécute la macro, j'ai un message d'erreur : L'indice n'appartien pas à la sélection.

Merci d'avance pour votre réponse.

Cordialement,
Domino40
Configuration: Windows 2003
Firefox 2.0.0.11

5 réponses

  1. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Il faut que le classeur envoyé soit ouvert avec cette syntaxe et donc tu n'as pas besoin du chemin complet.
    d'autre par le range fait partie de la feuille et non du classeur.
    essayes ceci qui devrait fonctionner.
    Workbooks("BT.xls").SendMail Recipients:=ActiveSheet.Range("E52").Value, _
    Subject:=ActiveSheet.Range("E53").Value, _
    ReturnReceipt:=True
    
    3
  2. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    En fait, je crois que le plus simple c'est d'avoir plusieurs cellules adresse rassemblées dans une "array" et tu peux en mettre d'autres, séparées par la virgule à l'intérieur des parenthéses.
    Workbooks("bt.xls").SendMail _
    Recipients:=Array(ActiveSheet.Range("E52").Value, _
                ActiveSheet.Range("F52").Value), _
    Subject:=ActiveSheet.Range("E53").Value, _
    ReturnReceipt:=True
    
    1
  3. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    ActiveWorkbook.SendMail Recipients:=range("A1").value, _

    Cela n'envoie que le classeur courant effectivement.
    Si tu veux envoyer un autre classeur avec des données du classeur courant ou du classeur à envoyer

    Workbooks("fichierX").SendMail Recipients:=Workbooks("fichierX").Worksheets("Ma_feuille").range("A1").value,

    ou

    Workbooks("fichierX").SendMail Recipients:=ActiveWorkbook.range("A1").value,
    0
  4. domino40
     
    Bonjour,

    Encore merci pour votre réactivité.

    Mais décidément cette macro résiste !

    Si je la passe en ActiveWorkbook --> Elle passe impec.

    Mais si je lui donne le chemin de mon fichier BT.xls voir macro si dessous :

    Workbooks("F:\Epave\BT.xls").SendMail Recipients:=ActiveWorkbook.Range("E52").Value, _
    Subject:=Range("E53").Value, _
    ReturnReceipt:=True

    Si j'ai bien saisi :

    --> BT.xls est mon fichier à envoyer
    --> E52 est la cellule contenant l'adresse E mail, mais de mon fichier ouvert (qui n'est donc pas le même que BT.xls)
    --> E53 est la cellue contenant l'objet du message

    J’ai le message d’erreur suivant :

    Erreur d’exécution 438

    Propriété ou méthode non gérée par cet objet

    Très cordialement,

    Domino40
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. domino40
     
    Bonsoir,

    Je ne sait pas comment vous remercier tant sur votre rapidité que votre efficacité.
    ça marche s'est génial !

    Quand on aime on ne compte plus

    Y aurait il un petit bonus ?

    Si je veux envoyer d'un coup à plusieurs adresse E mail

    Faut il que je duplique la macro, ou est il possible d'ajouter d'autres cellules contenant un adresse e mail ou puis je mettre plusieurs adresses danas la même cellule et a quel format ?

    Très cordialement,

    Domino40
    0