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 :

Copie du screenshot dans body


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2012
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 45
    Par défaut Copie du screenshot dans body
    Bonjour,
    Je cherche à coller un screenshot fait avec la commande CopyPicture dans le Body d'un email.
    Merci de votre aide !

    Pour être plus clair voici mon code :

    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
    Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, _
    Cancel As Boolean)
    
    '---Message box---'
    Dim answer As String
    answer = MsgBox("Voulez-vous enregistrer le fichier", vbYesNo, "Enregistrement")
    If answer = vbNo Then Cancel = True
    If answer = vbYes Then
    
    '---Open Outlook type stuff---'
    Set OutlookApp = CreateObject("Outlook.Application")
    Set OlObjects = OutlookApp.GetNamespace("MAPI")
    Set Mail = OutlookApp.CreateItem(olMailItem)
    
    '---Add recipients---'
    Mail.Recipients.Add ("email@email.com")
    
    '---Add subject---'
    Mail.Subject = "Sujet du mail"
    
    '---Add body---'
    ActiveSheet.Range("A1:Q38").CopyPicture >>> Copie le tableau dans le presse-papier
    Mail.Body = >>> INSERER LE SCREENSHOT ICI<<<
    Mail.Display
    Mail.Send
    
    '---Give conformation of sent message---'
    MsgBox "Le fichier a bien été enregistré", , "Fichier enregistré"
    
    End If
    
    '---Save the document---'
    '---Me.Worksheets.Save---'
    
    End Sub

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Par défaut
    Bonjour,

    Pour une image issu du presse-papier je n'ai pas encore trouvé mais pour du texte tu peux tester ce qui suit.
    Il faut cocher la référence "Microsoft Forms 2.0 Object Library". Si tu ne la trouve pas, ajoute une Form dans ton classeur puis vire la, la référence sera ajoutée d'office.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    ActiveSheet.Range("A1:Q38").Copy 'Picture
     
    With New dataObject
        .GetFromClipboard
        Mail.Body = .GetText(1)
    End With
    Hervé.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2012
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 45
    Par défaut
    Le script ne me met pas d'erreur, mais aucun mail ne part maintenant

  4. #4
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    Hello,

    il ne part pas mais s'affiche-t-il au moins ?
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Février 2012
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2012
    Messages : 45
    Par défaut
    Arf désolé j'ai fait une petite boulette Mais c'est bon j'ai vu pourquoi ça ne marchait pas.

    Maintenant j'ai une autre question. Voilà est-il possible d'avoir les lignes et colonnes alignées. Je veux dire par la avoir le tableau comme si il était en HTML.

    Désolé si je suis un peu chi*nt

  6. #6
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 682
    Par défaut
    Hum,

    ca serait pas plus simple de passer par la fonction qui envoie une plage de données directement ?

    http://outlook.developpez.com/faq/?p...VBA_Send_Range
    Cycle de vie d'un bon programme :
    1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorise

    Pas de question technique par MP, je ne réponds pas

    Mes ouvrages :
    Migrer les applications VBA Access et VBA Excel vers la Power Platform
    Apprendre à programmer avec Access 2016, Access 2019 et 2021

    Apprendre à programmer avec VBA Excel
    Prise en main de Dynamics 365 Business Central

    Coffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Copie d'écran dans un fichier
    Par angsthase dans le forum Autres Logiciels
    Réponses: 12
    Dernier message: 17/08/2005, 00h45
  2. Problème de copie de string dans string
    Par kazarn dans le forum SL & STL
    Réponses: 17
    Dernier message: 15/03/2005, 18h35
  3. [easystruts] probleme de copie des *.tld dans web-inf
    Par champion dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 23/08/2004, 11h46
  4. screenshot dans une résolution > a celle affichée
    Par cemoi dans le forum DirectX
    Réponses: 8
    Dernier message: 29/12/2003, 18h16
  5. Copie de donnees dans SQL server 2000
    Par papayou42 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 19/12/2003, 10h58

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