Note: The other languages of the website are Google-translated. Back to English
Inloggen  \/ 
x
or
x
Registreer  \/ 
x

or

Hoe alle bijlagenamen in de berichttekst vermelden bij het opstellen van e-mail in Outlook?

Zijn er goede manieren om alle bijlagenamen in de berichttekst in te voegen bij het opstellen van een e-mail in Outlook? In dit artikel zal ik het hebben over het oplossen van deze taak in Outlook.

Maak een lijst van alle bijlagenamen in de berichttekst bij het opstellen van e-mail met VBA-code

Maak een lijst van alle bijlagenamen in de berichttekst bij het opstellen van een e-mail met een eenvoudige functie


Maak een lijst van alle bijlagenamen in de berichttekst bij het opstellen van e-mail met VBA-code

Voer de volgende stappen uit om deze taak te voltooien:

1. Houd de ALT + F11 toetsen om de te openen Microsoft Visual Basic voor toepassingen venster.

2. In de Microsoft Visual Basic voor toepassingen venster, dubbelklik DezeOutlookSessie van de Project1 (VbaProject.OTM) deelvenster om de modus te openen en kopieer en plak vervolgens de volgende code in de lege module.

VBA-code: vermeld alle bijlagenamen in de berichttekst:

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
    Dim xMailItem As MailItem
    If Item.Class = olMail Then
        Set xMailItem = Item
        If xMailItem.Attachments.Count > 0 Then
          AddAttachmentNamesToBody
        End If
    End If
    End Sub

3. Blijf dan klikken Invoegen > Module, kopieer en plak onderstaande code in de geopende lege module, zie screenshot:

VBA-code: vermeld alle bijlagenamen in de berichttekst:

Public Sub AddAttachmentNamesToBody()
    Dim xMailItem As MailItem
    Dim xAttachment As Attachment
    Dim xFileName As String
   Dim xInspector As Outlook.Inspector
    Dim xDoc As Word.Document
    Dim xWdSelection As Word.Selection
    On Error Resume Next
    Set xMailItem = Outlook.ActiveInspector.CurrentItem
    If xMailItem.Attachments.Count = 0 Then
        Exit Sub
    End If
    xFileName = ""
    For Each xAttachment In xMailItem.Attachments
        If xFileName = "" Then
            xFileName = " <" & xAttachment.FileName & "> "
        Else
            xFileName = xFileName & vbCrLf & " <" & xAttachment.FileName & "> "
        End If
    Next xAttachment
    Set xInspector = Outlook.Application.ActiveInspector()
    Set xDoc = xInspector.WordEditor
    Set xWdSelection = xDoc.Application.Selection
    xWdSelection.HomeKey Unit:=wdStory
    xWdSelection.InsertBefore "Attachments: " & vbCrLf & xFileName & vbCrLf & vbCrLf
    Set xMailItem = Nothing
    End Sub

4. En klik vervolgens op Toolbox > Referenties functie in het Microsoft Visual Basic voor toepassingen raam, in de pop uit Referenties-Project1 dialoogvenster, vink aan Microsoft Word-objectbibliotheek optie van de Beschikbare referenties keuzelijst, zie screenshot:

5. Klikken OK om het dialoogvenster te verlaten, moet u de macroknop toevoegen aan het Snelle toegangswerkbalk. In het nieuwe Bericht venster, kies Meer opdrachten van de Pas de werkbalk Snelle toegang aan dropdown, zie screenshot:

6. In de Outlook Opties dialoogvenster voert u de volgende bewerkingen uit:

(1.) Selecteer Macro's van de Kies opdrachten van keuzelijst;

(2.) Klik op de macronaam die u zojuist hebt ingevoegd;

(3.) En klik dan Toevoegen knop om de macro toe te voegen aan het Pas de werkbalk Snelle toegang aan.

7. Dan klikken OK om het dialoogvenster te sluiten, is de macroknop nu in het Snelle toegangswerkbalk, zie screenshot:

8. Wanneer u nu een nieuw bericht maakt en op de macroknop klikt, worden de namen van de bijlagen boven de berichttekst ingevoegd zoals in de volgende schermafbeelding:


Maak een lijst van alle bijlagenamen in de berichttekst bij het opstellen van een e-mail met een eenvoudige functie

Misschien is de bovenstaande code zo moeilijk toe te passen, als u dat heeft gedaan Kutools for Outlook, Met Kopieer namen functie, kunt u snel de namen van de bijlagen van een bericht kopiëren en ze overal plakken waar u maar wilt.

Opmerking:Om dit toe te passen Kopieer namen, ten eerste moet u het Kutools for Outlooken pas de functie vervolgens snel en gemakkelijk toe.

Na het installeren van Kutools for Outlook, doe dit als volgt:

1. Maak eerst de nieuwe e-mail die u nodig hebt en klik vervolgens op Kutools > Kopieer namen in het nieuwe Bericht venster, zie screenshot:

2. En dan verschijnt er een promptvenster om u eraan te herinneren dat de namen van de bijlagen naar het klembord zijn gekopieerd, zie screenshot:

3. Nu hoeft u alleen maar op te drukken Ctrl + V toetsen samen om de namen van de bijlagen in de berichttekst te plakken die u nodig hebt, zie screenshot:


Meer relatieve artikelen:

  • Allen beantwoorden met originele bijlagen in Outlook
  • Normaal gesproken gaan de originele bijlagen automatisch verloren als u de functie Allen beantwoorden toepast om het bericht aan alle ontvangers in Outlook te beantwoorden. Is het mogelijk om originele bijlagen toe te voegen wanneer u iedereen beantwoordt in Outlook?
  • Download / bewaar bijlagen van Outlook naar een bepaalde map
  • Over het algemeen kunt u alle bijlagen van één e-mail opslaan door te klikken op Bijlagen> Alle bijlagen opslaan in Outlook. Maar als u alle bijlagen van alle ontvangen e-mails en ontvangen e-mails wilt opslaan, een ideaal dan? Dit artikel introduceert twee oplossingen om automatisch bijlagen van Outlook naar een bepaalde map te downloaden.
  • Wijzig de standaardlocatie voor het opslaan van bijlagen in Outlook
  • Ben je het zat om de bijlagelocatie te vinden die je hebt opgegeven telkens wanneer je Outlook start? In deze zelfstudie laten we u zien hoe u de standaardlocatie voor bijlagen kunt wijzigen. Daarna wordt de opgegeven map voor het opslaan van bijlagen automatisch geopend telkens wanneer u de bijlagen opslaat, ook al start u Outlook opnieuw op.
  • Verwijder alle bijlagen uit e-mail in Outlook
  • Normaal gesproken kunt u, wanneer u een voorbeeld van een e-mail bekijkt, een bijlage verwijderen door met de rechtermuisknop te klikken en het item Bijlage verwijderen te selecteren. Soms kan een e-mailbericht veel bijlagen bevatten en het zal vervelend zijn om ze een voor een te verwijderen. Hier regelen we u met twee eenvoudige trucs om alle bijlagen in één e-mail te verwijderen en ook alle bijlagen uit meerdere e-mails in Outlook te verwijderen.

Kutools voor Outlook - Brengt 100 geavanceerde functies naar Outlook en maakt het werk veel gemakkelijker!

  • Auto CC / BCC volgens regels bij het verzenden van e-mail; Automatisch doorsturen Meerdere e-mails op maat; Auto antwoord zonder uitwisselingsserver, en meer automatische functies ...
  • BCC-waarschuwing - toon bericht wanneer u alle probeert te beantwoorden als uw e-mailadres in de BCC-lijst staat; Herinner bij ontbrekende bijlagen, en meer herinneren functies ...
  • Beantwoorden (alle) met alle bijlagen in het e-mailgesprek; Beantwoord veel e-mails in seconden; Begroeting automatisch toevoegen wanneer antwoord; Datum toevoegen aan onderwerp ...
  • Hulpmiddelen voor bijlagen: beheer alle bijlagen in alle e-mails, Automatisch loskoppelen, Alles comprimeren, Alles hernoemen, Alles opslaan ... Snel rapport, Tel geselecteerde e-mails...
  • Krachtige ongewenste e-mails op maat; Verwijder dubbele e-mails en contacten... Stel u in staat om slimmer, sneller en beter te doen in Outlook.
shot kutools outlook kutools tabblad 1180x121
shot kutools vooruitzichten kutools plus tabblad 1180x121
 
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Autumn · 6 months ago
    Why am I getting "user-defined type not defined" when I get to Step 8?
  • To post as a guest, your comment is unpublished.
    Autumn · 6 months ago
    Why am I getting "user-defined type not defined" when I get to Step 8?
  • To post as a guest, your comment is unpublished.
    VMS · 1 years ago
    When I do this, it always put the attachments at the beginning of the message, no matter where my cursor is located. I then have to copy/paste to the bottom of the email. Is there a way to change that?
    • To post as a guest, your comment is unpublished.
      skyyang · 1 years ago
      Hello, VMS,
      If you want to put the attachments at the the position of your cursor, please replace the second code with following code:

      Public Sub AddAttachmentNamesToBody()
      Dim xMailItem As MailItem
      Dim xAttachment As Attachment
      Dim xFileName As String
      Dim xInspector As Outlook.Inspector
      Dim xDoc As Word.Document
      Dim xWdSelection As Word.Selection
      On Error Resume Next
      Set xMailItem = Outlook.ActiveInspector.CurrentItem
      If xMailItem.Attachments.Count = 0 Then
      Exit Sub
      End If
      xFileName = ""
      For Each xAttachment In xMailItem.Attachments
      If xFileName = "" Then
      xFileName = " <" & xAttachment.FileName & "> "
      Else
      xFileName = xFileName & vbCrLf & " <" & xAttachment.FileName & "> "
      End If
      Next xAttachment
      Set xInspector = Outlook.Application.ActiveInspector()
      Set xDoc = xInspector.WordEditor
      Set xWdSelection = xDoc.Application.Selection
      xWdSelection.InsertBefore "Attachments: " & vbCrLf & xFileName & vbCrLf & vbCrLf
      Set xMailItem = Nothing
      End Sub

      Please try, hope it can help you!
      • To post as a guest, your comment is unpublished.
        VMS · 1 years ago
        That worked! Now another favor... How do I exclude certain file types or names? My required company signature contains a PNG file that I would like to exclude.Thank you!!
        • To post as a guest, your comment is unpublished.
          skyyang · 1 years ago
          To exclude some specific files, please apply the below code, please try it.
          Public Sub AddAttachmentNamesToBody()
          Dim xMailItem As MailItem
          Dim xAttachment As Attachment
          Dim xFileName As String
          Dim xInspector As Outlook.Inspector
          Dim xDoc As Word.Document
          Dim xWdSelection As Word.Selection
          Dim xExt As String
          Dim xFound As Boolean
          Dim xExtArr As Variant
          On Error Resume Next
          xExtArr = Array("docx", "exe") 'change the file extension you want to exclude
          Set xMailItem = Outlook.ActiveInspector.CurrentItem
          If xMailItem.Attachments.Count = 0 Then
          Exit Sub
          End If
          xFileName = ""
          For Each xAttachment In xMailItem.Attachments
          xExt = VBA.Mid(xAttachment.FileName, VBA.InStrRev(xAttachment.FileName, ".") + 1)
          xFound = False
          For i = LBound(xExtArr) To UBound(xExtArr)
          If xExt = xExtArr(i) Then
          xFound = True
          Exit For
          End If
          Next
          If xFound = False Then
          If xFileName = "" Then
          xFileName = " <" & xAttachment.FileName & "> "
          Else
          xFileName = xFileName & vbCrLf & " <" & xAttachment.FileName & "> "
          End If
          End If
          Next xAttachment
          Set xInspector = Outlook.Application.ActiveInspector()
          Set xDoc = xInspector.WordEditor
          Set xWdSelection = xDoc.Application.Selection
          xWdSelection.InsertBefore "Attachments: " & vbCrLf & xFileName & vbCrLf & vbCrLf
          Set xMailItem = Nothing
          End Sub
  • To post as a guest, your comment is unpublished.
    mw4 · 2 years ago
    when I tried this code it sends the attachment names in every email that has attachments.
    I want it to only do it when I click the macro.

    How do I amend the code to do just that?
    • To post as a guest, your comment is unpublished.
      kamelion · 1 years ago
      I also don't know how to fix it. Anyone could hep on that?
  • To post as a guest, your comment is unpublished.
    SB · 2 years ago
    This is wonderful -- thank you! Is there also a way to somehow view all the attachment names in an email that has been sent to you from someone else (i.e. received)? For some reason, the file names are not displaying in full unless you hover, which is ridiculous when you regularly have 15 files to sort through.
    • To post as a guest, your comment is unpublished.
      skyyang · 2 years ago
      Hello,
      To List all attachment names in an received email, please copy and pase the below VBA code into the ThisOutlookSession module of the Microsoft Visual Basic for Applications window:

      Private Sub Application_NewMailEx(ByVal EntryIDCollection As String)
      Dim xEIDArr As Variant, xEID As Variant, xItem As Object
      Dim xAttachment As Attachment
      Dim xFileName As String
      On Error Resume Next
      xEIDArr = Split(EntryIDCollection, ",")
      For Each xEID In xEIDArr
      Set xItem = Session.GetItemFromID(xEID)
      If xItem.Class = olMail Then
      xFileName = ""
      For Each xAttachment In xItem.Attachments
      If IsEmbeddedAttachment(xAttachment) = False Then
      If xFileName = "" Then
      xFileName = " " & "<" & xAttachment.FileName & ">"
      Else
      xFileName = xFileName & "
      " & " " & "<" & xAttachment.FileName & ">"
      End If
      End If
      Next xAttachment
      If xFileName = "" Then Exit Sub
      xFileName = "Attachments: " & "
      " & xFileName & "
      " & "
      "
      xItem.HTMLBody = "" & xFileName & "" & xItem.HTMLBody
      xItem.Save
      End If
      Next
      Set xItem = Nothing
      End Sub

      Function IsEmbeddedAttachment(Attach As Attachment)
      Dim xAttParent As Object
      Dim xCID As String, xID As String
      Dim xHTML As String
      On Error Resume Next
      Set xAttParent = Attach.Parent
      xCID = ""
      xCID = Attach.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001F")
      If xCID <> "" Then
      xHTML = xAttParent.HTMLBody
      xID = "cid:" & xCID
      If InStr(xHTML, xID) > 0 Then
      IsEmbeddedAttachment = True
      Else
      IsEmbeddedAttachment = False
      End If
      End If
      End Function

      After pasting this code, when new emails with attachments arriving in your Outlook, the attachment names will be listed at the top of the message body automatically.
      Please try it, hope it can help you!
      • To post as a guest, your comment is unpublished.
        Nich · 1 months ago
        this is great. Is there any way to merge this with VMS's request above to exclude some specific files included in signatures (.png, .jpg, etc.)?

      • To post as a guest, your comment is unpublished.
        Daniel · 5 months ago
        Great, thanks for that. I wonder if it is possible that the list of attachments is only attached when I write to a specific email address?