IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Envoi tableau filtré dans corps du mail


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2016
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2016
    Messages : 41
    Par défaut Envoi tableau filtré dans corps du mail
    Bonjour,

    J'aimerais envoyer un tableau filtré en fonction des destinataires.Voici mon code qui fonctionne très bien quand j'indique ma plage mais j'aimerais filtré en fonction des destinataires.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    Function RangetoHTML(ByVal rng As Range)
        Dim fso As Object
        Dim ts As Object
        Dim TempFile As String
        Dim TempWB As Workbook
     
        TempFile = Environ$("temp") & "\" & Format(Now, "dd-mm-yy h-mm-ss") & ".htm"
        rng.Copy
        Set TempWB = Workbooks.Add(1)
        With TempWB.Sheets(1)
     
            .Cells(1).PasteSpecial Paste:=12
            .Cells(1).PasteSpecial Paste:=-4122
            .Cells(1).Select
            Application.CutCopyMode = False
            On Error Resume Next
            .DrawingObjects.Visible = True
            .DrawingObjects.Delete
            .Columns.AutoFit
            On Error GoTo 0
        End With
     
     
        With TempWB.PublishObjects.Add( _
             SourceType:=xlSourceRange, _
             Filename:=TempFile, _
             Sheet:=TempWB.Sheets(1).Name, _
             Source:=TempWB.Sheets(1).UsedRange.Address, _
             HtmlType:=xlHtmlStatic)
            .Publish (True)
        End With
     
        Set fso = CreateObject("Scripting.FileSystemObject")
        Set ts = fso.GetFile(TempFile).OpenAsTextStream(1, -2)
        RangetoHTML = ts.ReadAll
        ts.Close
        RangetoHTML = Replace(RangetoHTML, "align=center x:publishsource=", _
                              "align=left x:publishsource=")
     
        TempWB.Close savechanges:=False
     
     
        Kill TempFile
     
        Set ts = Nothing
        Set fso = Nothing
        Set TempWB = Nothing
     
    End Function
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Set Plage = Worksheets("test").Range("A1:K100")
     
    'Selection(Plage).AutoFilter Field:=4, Criteria1:=Sheets("Test2").Range("B" & I).Value
    je veux filtrer en fonction des destinataires et la feuille test2 est la valeur des destinataires mais j'arrive pas.

    J'attends svp vos remarques.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Personnellement quand je publie un code qui n'est pas de moi, je prends garde de ne pas laisser l'auteur!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Function RangetoHTML(rng As Object)
    ' Changed by Ron de Bruin 28-Oct-2006
    ' Working in Office 2000-2016
        Dim fso As Object
        Dim ts As Object
        Dim TempFile As String
        Dim TempWB As Workbook
     
        TempFile = Environ$("temp") & "\" & Format(Now, "dd-mm-yy h-mm-ss") & ".htm"
    ça c'est fait!

    fais un filtre actif ou élaboré et récupère le résultat du filtre pour ta conversion HTML.

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2016
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2016
    Messages : 41
    Par défaut
    Ok merci rdurupt de ta réponse , peux tu m'éclairer sur ce filtre. as tu un exemple stp à adapter à mon code ?

  4. #4
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2016
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2016
    Messages : 41
    Par défaut
    J'attends votre aide svp.

  5. #5
    Expert confirmé
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 093
    Billets dans le blog
    20
    Par défaut
    Citation Envoyé par marccelestins Voir le message
    Ok merci rdurupt de ta réponse ,
    Bonjour,
    Je pense pas que c'était le réponse attendue, plutôt un "désolé la prochaine fois je laisserai l'auteur..."

    Cherche les sujets comportant le mot PasteExcelTable pour la partie copie vers un Email

    tu auras aussi besoin de ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .Range("_FilterDataBase").SpecialCells(xlCellTypeVisible).Copy
    Have a nice day. Oliv'
    Votre réponse est peut être dans mon blog !
    https://www.developpez.net/forums/blogs/191381-oliv-/

Discussions similaires

  1. [ODS] Envoi MAIL avec macro variable dans corps du mail
    Par alex.a dans le forum ODS et reporting
    Réponses: 2
    Dernier message: 15/04/2016, 11h43
  2. [XL-2010] Exporter un tableau dans Corps de mail Outlook
    Par Coxtox dans le forum Macros et VBA Excel
    Réponses: 33
    Dernier message: 17/06/2015, 08h57
  3. Copier Coller Tableau Excel dans corps de mail
    Par mah.ngaz dans le forum VBA Outlook
    Réponses: 12
    Dernier message: 13/05/2015, 10h55
  4. [XL-2003] Envoi tableau Excel dans le corps d'un mail sans html ni image
    Par ezekiel2517 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 10/12/2012, 21h01
  5. [VBA] Insérer Tableau Excel dans Corps d'un Mail (Outlook)
    Par savior dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 10/10/2006, 11h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo