Envoi de feuilles de calcul uniques par e-mail (Microsoft Excel)
L’allemand a demandé s’il existe un moyen d’envoyer une feuille de calcul dans un classeur en tant que pièce jointe à un e-mail sans envoyer le classeur entier. La réponse courte est que vous ne pouvez pas – une feuille de calcul, par elle-même, ne peut pas exister en tant qu ‘ »entité »
que vous pouvez joindre à un e-mail. Vous ne pouvez envoyer des fichiers que sous forme de pièces jointes à des e-mails, ce qui signifie que vous devez avoir un fichier de classeur à envoyer.
Bien sûr, il est facile de créer un classeur à partir d’une seule feuille de calcul. Si vous n’avez besoin de le faire que de temps en temps, le moyen le plus simple est de suivre ces étapes:
-
Cliquez avec le bouton droit sur l’onglet de la feuille de calcul que vous souhaitez envoyer par courrier électronique.
-
Dans le menu contextuel résultant, choisissez Déplacer ou Copier. Excel affiche la boîte de dialogue Déplacer ou copier. (Voir la figure 1.)
-
À l’aide de la liste déroulante Pour réserver, choisissez Nouveau livre.
-
Assurez-vous que la case à cocher Créer une copie est activée.
-
Cliquez sur OK.
À ce stade, vous devriez voir un nouveau classeur avec une seule feuille de calcul, une copie de la feuille de calcul que vous souhaitez envoyer. Enregistrez ce classeur et envoyez-le par e-mail, et vous avez accompli ce que vous vouliez faire. Une fois qu’il a été envoyé par courrier électronique, vous pouvez supprimer le classeur de votre système, car votre feuille de calcul est également toujours dans le classeur d’origine.
Si vous devez régulièrement envoyer par courrier électronique la feuille de calcul actuelle à quelqu’un d’autre, vous souhaiterez peut-être créer une macro qui effectuera la tâche pour vous. La macro que vous créez varie en fonction du programme de messagerie que vous utilisez. Pour cette raison, il n’est pas possible de fournir une réponse macroéconomique complète dans cette astuce. Toutefois, il peut être instructif de fournir un exemple de macro qui peut envoyer par courrier électronique une feuille de calcul à l’aide d’Outlook comme programme de messagerie.
Sub EmailWithOutlook() Dim oApp As Object Dim oMail As Object Dim WB As Workbook Dim FileName As String Dim wSht As Worksheet Dim shtName As String Application.ScreenUpdating = False ' Make a copy of the active worksheet ' and save it to a temporary file ActiveSheet.Copy Set WB = ActiveWorkbook FileName = WB.Worksheets(1).Name On Error Resume Next Kill "C:\" & FileName On Error GoTo 0 WB.SaveAs FileName:="C:\" & FileName 'Create and show the Outlook mail item Set oApp = CreateObject("Outlook.Application") Set oMail = oApp.CreateItem(0) With oMail 'Uncomment the line below to hard code a recipient '.To = "[email protected]" 'Uncomment the line below to hard code a subject '.Subject = "Subject Line" 'Uncomment the lines below to hard code a body '.body = "Dear John" & vbCrLf & vbCrLf & _ '"Here is the file you asked for" .Attachments.Add WB.FullName .Display End With 'Delete the temporary file WB.ChangeFileAccess Mode:=xlReadOnly Kill WB.FullName WB.Close SaveChanges:=False 'Restore screen updating and release Outlook Application.ScreenUpdating = True Set oMail = Nothing Set oApp = Nothing End Sub
Notez que la macro fait effectivement ce qui a été fait lors des étapes précédentes:
il copie la feuille de calcul dans un nouveau classeur, puis envoie ce classeur par courrier électronique. Il supprime ensuite le classeur et vous ramène à votre utilisation normale d’Excel.
La macro enregistre le classeur temporaire (celui envoyé par courrier électronique) sur le lecteur C :. Si vous préférez que le classeur soit enregistré ailleurs (ou si les restrictions de votre système vous empêchent d’enregistrer des fichiers dans le répertoire racine de votre système), changez simplement l’emplacement dans les deux lignes de code qui font référence au lecteur C :.
Il existe un inconvénient potentiel à l’utilisation de l’approche détaillée dans cette astuce: lorsque vous créez une copie de la feuille de calcul dans un nouveau classeur, Excel peut faire des choses amusantes avec des références qui peuvent se trouver dans la feuille de calcul copiée. Par exemple, disons que vous souhaitez copier et envoyer par e-mail Sheet1 à partir du classeur d’origine. Cependant, Sheet1 inclut des références, dans les formules, aux cellules de Sheet2 et Sheet3. Lorsque vous effectuez la copie de Sheet1 dans le nouveau classeur, Excel conserve ces références aux feuilles du classeur d’origine. Alors que la feuille Sheet1 copiée peut être envoyée par courrier électronique à quelqu’un d’autre, lorsque cette personne essaie de l’ouvrir, les références ne fonctionneront plus correctement car il ou elle n’a pas le classeur d’origine référencé.
Il existe trois solutions potentielles à cela. Le premier, évidemment, est de vous assurer que vous ne envoyez pas par courrier électronique une seule feuille de calcul dans le nouveau classeur, mais toutes les feuilles de calcul dont le destinataire peut avoir besoin. La deuxième solution consiste à utiliser des techniques de copier-coller pour coller des valeurs dans le nouveau classeur.
Enfin, vous pouvez copier la feuille de calcul originale puis, dans la copie, rechercher toutes les références externes et les éliminer.
Si vous recherchez une discussion plus approfondie sur la manière d’envoyer une feuille de calcul par courrier électronique à l’aide de divers programmes, vous voudrez certainement visiter la page Web suivante:
http://www.rondebruin.nl/win/section1.htm
_Note: _
Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites ExcelTips), j’ai préparé une page spéciale qui comprend des informations utiles.
lien: / excelribbon-ExcelTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur]
.
ExcelTips est votre source pour une formation Microsoft Excel rentable.
Cette astuce (8508) s’applique à Microsoft Excel 2007, 2010, 2013, 2016, 2019 et Excel dans Office 365. Vous pouvez trouver une version de cette astuce pour l’ancienne interface de menu d’Excel ici:
link: / excel-Sending_Single_Worksheets_via_E-mail [Envoi de feuilles de travail uniques par e-mail]
.