Ibland, när du vidarebefordrar ett e-postmeddelande som innehåller flera bilagor, kanske du vill byta namn på bilagorna direkt vid vidarebefordran. Den här artikeln lär dig hur du gör det med Outlook VBA.
Som standard tillåter Outlook inte användaren att byta namn på bilagor vid vidarebefordran. Därför, om du vill byta namn på dem, är det unika sättet att först spara filerna i en lokal mapp på din dator, sedan byta namn på dem och sedan bifoga dem till vidarebefordringsmeddelandet. Uppenbarligen är denna metod avsevärt besvärlig. Dessutom kan ibland dessa filer vara viktiga för dig, så du vill verkligen inte spara dem på din dator. I den här situationen måste du längta efter en snabbare metod för att låta dig byta namn på de bifogade filerna direkt i vidarebefordringsmeddelandena. Följande är ett tillvägagångssätt för att förverkliga det genom Outlook VBA.
Byt namn på bilagorna när du vidarebefordrar ett e-postmeddelande
- För det första, starta Outlook och gå till fliken "Utvecklare".
- Leta sedan upp och klicka på knappen “Visual Basic”.
- Därefter öppnar du en ny modul i det nya popup-fönstret genom att välja "Infoga"> "Modul".
- Därefter bör du kopiera och klistra in följande VBA-koder i den.
Sub RenameAttachmentsWhenForwarding()
Dim olItem As MailItem
Dim Att As Attachment
Dim Atts As Attachments
Dim olForward As MailItem
Dim FWAtt As Attachment
Dim FWAtts As Attachments
Dim FSO As Object
Dim TempFPath As Object
Dim FilePath As String
Dim strName As String
Dim strExten As String
Dim strFile As String
Set olItem = Application.ActiveExplorer.Selection.Item(1)
Set Atts = olItem.Attachments
Set olForward = olItem.Forward
olForward.Display
On Error Resume Next
For Each Att In Atts
'Get the path to Temporary Folder
Set FSO = CreateObject("Scripting.FileSystemObject")
Set TempFPath = FSO.GetSpecialFolder(2)
FilePath = TempFPath.Path & "\"
'Rename the attachments
strName = InputBox("Enter a new name for" & vbCrLf & Att.FileName)
'Change "4" based on the length of the attachment file extension
strExten = Right(Att.FileName, 4)
strFile = FilePath & strName & "." & strExten
If strName <> "" Then
'Save the attachments to the Temporary Folder
Att.SaveAsFile (strFile)
'Add the attachments saved in new names from the Temporary Folder
olForward.Attachments.Add (strFile)
Set FWAtts = olForward.Attachments
'Remove the original attachments
For Each FWAtt In FWAtts
If InStr(FWAtt.FileName, Att.FileName) > 0 Then
FWAtt.Delete
End If
Next
End If
Next
End Sub
- Därefter kan du lämna det nuvarande “Visual Basic” -fönstret och fortsätta att lägga till det nya makrot i snabbåtkomstverktygsfältet som vanligt.
- Äntligen kan du prova.
- Välj först ett e-postmeddelande och klicka sedan på den nya makroknappen i verktygsfältet Snabbåtkomst.
- Då öppnas ett nytt vidarebefordringsmeddelande. Du kan se de bifogade filerna i originalnamn i raden "Bifogad" och även få en dialogruta som kräver att du anger ett nytt namn för en specifik bilaga.
- När du har angett nya namn för alla filer och klickat på “OK” ser du att alla bifogade filer finns i de nya namnen.
- Så småningom kan du komponera vidarebefordran av e-postmeddelanden och trycka på knappen "Skicka" för att skicka meddelandet.
Håll dig uppmärksam på alla potentiella hot mot din Outlook
Det erkänns att Outlook är mottagligt för korruption. Således är det en långvarig uppgift att skydda Outlook-data mot alla hot, inklusive virusinfektion, malware-attack och Outlook PST-dataskada, etc. Den viktigaste åtgärden är att regelbundet säkerhetskopiera dina Outlook-data. Det är också klokt att ha ett avancerat reparationsverktyg i närheten, som DataNumen Outlook Repair, vilket kommer att vara till nytta.
Författarintroduktion:
Shirley Zhang är expert på dataåterställning DataNumen, Inc., som är världsledande inom teknik för återställning av data, inklusive reparera skadad mdf och Outlook-programvara för reparationsprogramvara. För mer information besök www.datanumen.com




