Passer au contenu principal
 

Comment envoyer / envoyer par e-mail une plage de cellules via Outlook à partir d'Excel?

Auteur : Xiaoyang Dernière modification: 2024-09-05

Avez-vous déjà souffert d'un problème qui, après avoir terminé un rapport dans une feuille de calcul, et que vous devez envoyer à une plage de cellules de cette feuille de calcul contenant des données importantes pour votre destinataire spécifique. Existe-t-il des moyens rapides pour envoyer par e-mail cette plage à partir d'Excel sans ouvrir Outlook?

Envoyer une plage de cellules en pièce jointe à partir d'Excel avec le code VBA

Envoyer la plage de cellules en tant que corps d'Excel avec le code VBA


flèche bleue bulle droiteEnvoyer une plage de cellules en pièce jointe à partir d'Excel avec le code VBA

Le code VBA suivant peut vous aider à envoyer votre plage sélectionnée en tant que pièce jointe dans Excel. Veuillez faire comme ceci:

1. Ouvrez votre classeur, puis maintenez la touche ALT + F11 clés pour ouvrir le Fenêtre Microsoft Visual Basic pour Applications.

2Cliquez sur insérer > Moduleet collez le code suivant dans le Fenêtre du module.

Code VBA: envoyer une plage de cellules en pièce jointe depuis Excel

Sub SendRange()
'Update 20131209
Dim xFile As String
Dim xFormat As Long
Dim Wb As Workbook
Dim Wb2 As Workbook
Dim Ws As Worksheet
Dim FilePath As String
Dim FileName As String
Dim OutlookApp As Object
Dim OutlookMail As Object
Dim WorkRng As Range
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set Wb = Application.ActiveWorkbook
Wb.Worksheets.Add
Set Ws = Application.ActiveSheet
WorkRng.Copy Ws.Cells(1, 1)
Ws.Copy
Set Wb2 = Application.ActiveWorkbook
Select Case Wb.FileFormat
Case xlOpenXMLWorkbook:
    xFile = ".xlsx"
    xFormat = xlOpenXMLWorkbook
Case xlOpenXMLWorkbookMacroEnabled:
    If Wb2.HasVBProject Then
        xFile = ".xlsm"
        xFormat = xlOpenXMLWorkbookMacroEnabled
    Else
        xFile = ".xlsx"
        xFormat = xlOpenXMLWorkbook
    End If
Case Excel8:
    xFile = ".xls"
    xFormat = Excel8
Case xlExcel12:
    xFile = ".xlsb"
    xFormat = xlExcel12
End Select
FilePath = Environ$("temp") & "\"
FileName = Wb.Name & Format(Now, "dd-mmm-yy h-mm-ss")
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
Wb2.SaveAs FilePath & FileName & xFile, FileFormat:=xFormat
With OutlookMail
    .To = "skyyang@extendoffice.com"
    .CC = ""
    .BCC = ""
    .Subject = "information of kte"
    .Body = "hello, please check and read this document. "
    .Attachments.Add Wb2.FullName
    .Send
End With
Wb2.Close
Kill FilePath & FileName & xFile
Set OutlookMail = Nothing
Set OutlookApp = Nothing
Ws.Delete
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub

Notes: Dans le code ci-dessus, vous pouvez modifier les informations suivantes selon vos propres besoins.

  • .To = "skyyang @extendoffice.com "
  • .CC = ""
  • .BCC = ""
  • .Subject = "information de kte"
  • .Body = "bonjour, veuillez vérifier et lire ce document."

3. Puis clique F5 pour exécuter ce code, et une boîte de dialogue apparaîtra pour vous rappeler de sélectionner une plage que vous souhaitez envoyer. Voir la capture d'écran:

code vba pour sélectionner la plage de données

4. Puis clique OK, et une boîte de dialogue apparaîtra, une fois la barre de progression terminée, cliquez sur Autoriser, puis la plage spécifique de cellules a été envoyée à votre destinataire en tant que pièce jointe.

Cliquez sur Autoriser pour envoyer la plage sélectionnée en pièce jointe

une capture d'écran de kutools pour Excel ai

Débloquez Excel Magic avec Kutools AI

  • Exécution intelligente: effectuez des opérations sur les cellules, analysez les données et créez des graphiques, le tout piloté par des commandes simples.
  • Formules personnalisées: Générez des formules sur mesure pour rationaliser vos flux de travail.
  • Codage VBA: Écrivez et implémentez du code VBA sans effort.
  • Interprétation de la formule: Comprendre facilement des formules complexes.
  • Traduction de texte: Brisez les barrières linguistiques dans vos feuilles de calcul.
Améliorez vos capacités Excel avec des outils basés sur l'IA. Téléchargez et faites l'expérience d'une efficacité comme jamais auparavant !

flèche bleue bulle droiteEnvoyer la plage de cellules en tant que corps d'Excel avec le code VBA

Si vous souhaitez envoyer une plage spécifique dans le cadre du corps du message à partir d'Excel, vous pouvez également appliquer le code VBA suivant pour le résoudre.

1. Activez votre feuille de calcul et maintenez la touche ALT + F11 clés pour ouvrir le Fenêtre Microsoft Visual Basic pour Applications.

2Cliquez sur insérer > Moduleet collez le code suivant dans le Fenêtre du module.

Code VBA: envoyer une plage de cellules en tant que corps depuis Excel

Sub EmailRange()
'Update 20131209
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
WorkRng.Select
ActiveWorkbook.EnvelopeVisible = True
With ActiveSheet.MailEnvelope
    .Introduction = "Please read this email."
    .Item.To = "skyyang@extendoffice.com"
    .Item.Subject = "information of kte"
    .Item.Send
End With
Application.ScreenUpdating = True
End Sub

Remarque : Dans le code ci-dessus, vous pouvez modifier les informations suivantes selon vos besoins.

  • .Introduction = "Veuillez lire cet e-mail."
  • .Item.To = "skyyang @extendoffice.com "
  • .Item.Subject = "information de kte"

3. Puis clique F5 pour exécuter ce code, et une boîte de dialogue apparaîtra pour vous rappeler de sélectionner une plage que vous souhaitez envoyer.

code vba pour sélectionner la plage de données

4. Puis clique OK, et une boîte de dialogue apparaîtra, une fois la barre de progression terminée, cliquez sur Autoriser, puis la plage spécifique de cellules a été envoyée à votre destinataire en tant que corps du message.

Cliquez sur Autoriser pour envoyer la plage sélectionnée comme corps de courrier électronique

Notes:

1. Ces codes ne sont disponibles que lorsque Outlook est votre programme de messagerie.

2. Après avoir envoyé la feuille de calcul actuelle, vous pouvez accéder à votre Outlook pour vous assurer que l'e-mail a bien été envoyé.


Articles Liés:

Comment envoyer une feuille de calcul uniquement via Outlook à partir d'Excel?

Comment envoyer le classeur actuel via Outlook à partir d'Excel?

Meilleurs outils de productivité bureautique

🤖 Aide à l'IA Kutools: Révolutionner l'analyse des données en s'appuyant sur : Exécution intelligente   |  Générer du code  |  Créer des formules personnalisées  |  Analyser les données et générer des graphiques  |  Invoquer les fonctions Kutools...
Caractéristiques populaires: Rechercher, mettre en évidence ou identifier les doublons   |  Supprimer les lignes vides   |  Combinez des colonnes ou des cellules sans perdre de données   |   Tour sans formule 
Super recherche: VSearchup à critères multiples    VSearch à valeurs multiples  |   Recherche virtuelle sur plusieurs feuilles   |   Recherche floue ....
Liste déroulante avancée: Créez rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante à sélection multiple ....
Gestionnaire de colonnes: Ajouter un nombre spécifique de colonnes  |  Déplacer les colonnes  |  Basculer l'état de visibilité des colonnes masquées  |  Comparer les plages et les colonnes 
Caractéristiques en vedette: Mise au point de la grille   |  Voir Design   |   Grande barre de formule    Gestionnaire de classeurs et de feuilles   |  Ressources (Texte automatique)   |  Sélecteur de date   |  Combiner des feuilles de travail   |  Crypter/déchiffrer les cellules    Envoyer des e-mails par liste   |  Super filtre   |   Filtre spécial (filtre gras/italique/barré...) ...
Les 15 meilleurs ensembles d'outils12 Texte Outils (Ajouter du texte, Supprimer les caractères, ...)   |   50+ Graphique Types (Diagramme de Gantt, ...)   |   40+ Pratique Formules (Calculer l'âge en fonction de l'anniversaire, ...)   |   19 Insertion Outils (Insérer le code QR, Insérer une image à partir du chemin, ...)   |   12 Conversion Outils (Nombres en mots, Conversion des devises, ...)   |   7 Fusionner et fractionner Outils (Lignes de combinaison avancées, Cellules divisés, ...)   |   ... et plus

Améliorez vos compétences Excel avec Kutools for Excel et faites l'expérience d'une efficacité comme jamais auparavant. Kutools for Excel offre plus de 300 fonctionnalités avancées pour augmenter la productivité et gagner du temps.  Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...


Office Tab apporte une interface à onglets à Office et facilite grandement votre travail

  • Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!