Tableur Excel 2003

Résolu
philetisa Messages postés 8 Statut Membre -  
philetisa Messages postés 8 Statut Membre -
Bonjour,

je recherche une procédure VBA ou macro pour transmettre automatiquement une feuille par mail à un destinataire dont le nom se trouve dans la feuille.

merci pour votre aide

2 réponses

  1. Mytå Messages postés 4246 Date d'inscription   Statut Contributeur Dernière intervention   957
     
    0
    1. philetisa Messages postés 8 Statut Membre
       
      merci, cette fonction marche mais en fait je me suis mal exprimé je souhaiterais n'envoyer qu'une feuille de mon classeur au format PDF en récuprant le nom des destinataires que je pourrais insérer dans cette feuille.

      par ailleurs la feuille que je souhaite envoyée contient des formules de calculs avec lien sur d'autres feuilles de mon classeur.

      je suis un peu tordu mais si vous avez une solution ce serait formidable.
      0
  2. philetisa Messages postés 8 Statut Membre
     
    En fait j'ai capté sur CCM la macro suivante :

    '=====================================================================================
    '
    ' [url=https://sourceforge.net/projects/pdfcreator/]SourceForge.net: PDFCreator[/url] PDFCreator-0_9_3_GPLGhostscript.exe
    ' sous VBA Menu Outils | Références Cocher PDFCreator
    ' Cocher Microsoft CDO for Exchange xxxx Library
    '
    '=====================================================================================

    Option Explicit

    Sub Tst_PdfCreator()
    Dim objMessage As CDO.Message
    Dim JobPDF As Object
    Dim sNomPDF As String
    Dim sCheminPDF As String

    sNomPDF = "Essai_PdfCreator.pdf"
    sCheminPDF = ActiveWorkbook.Path & Application.PathSeparator

    If IsEmpty(ActiveSheet.UsedRange) Then Exit Sub

    Set JobPDF = CreateObject("PDFCreator.clsPDFCreator")

    With JobPDF
    If .cStart("/NoProcessingAtStartup") = False Then
    MsgBox "Initialisation de PDFCreator impossible", vbCritical + vbOKOnly, "PDFCreator"
    Exit Sub
    End If
    .cOption("UseAutosave") = 1
    .cOption("UseAutosaveDirectory") = 1
    .cOption("AutosaveDirectory") = sCheminPDF
    .cOption("AutosaveFilename") = sNomPDF

    ' 0=PDF, 1=Png, 2=jpg, 3=bmp, 4=pcx, 5=tif, 6=ps, 7=eps, 8=txt
    .cOption("AutosaveFormat") = 0

    .cClearCache
    End With

    ActiveSheet.PrintOut copies:=1, ActivePrinter:="PDFCreator"

    'Fichier dans la file d'attente
    Do Until JobPDF.cCountOfPrintjobs = 1
    DoEvents
    Loop
    JobPDF.cPrinterStop = False

    'Attendre que la file d'attente soit vide
    Do Until JobPDF.cCountOfPrintjobs = 0
    DoEvents
    Loop
    JobPDF.cClose
    Set JobPDF = Nothing

    Set objMessage = CreateObject("CDO.Message")
    With objMessage
    .Subject = "suivi fiche agent"
    .From = ""
    .To = "xxxx.xxxxxx@xxxx"
    .TextBody = "Texte dans le corps de message"
    .AddAttachment sCheminPDF & sNomPDF
    .Send
    End With

    Set objMessage = Nothing

    End Sub

    la copie de la feuille sur le rep de base du classeur marche nikel mais au moment de la transmission par mail la macro plante sur ".send" en m'informant que la valeur de configuration "sendusing" est non valide.

    QUELQU'UN PEUT-IL M'AIDER

    MERCI
    0