Hur man automatiskt öppnar bilagor till inkommande Outlook-e-post från en specifik avsändare

Om du vill att Outlook automatiskt ska öppna bilagor för inkommande e-post från en viss avsändare kan du läsa den här artikeln. Här kommer vi att vägleda dig hur du uppnår det.

Till exempel mailar din chef dig ofta med flera viktiga filbilagor. För att reagera på din chef så snart som möjligt måste du öppna bilagorna när du tar emot dem. I det här scenariot kanske du längtar efter en smartare metod för att låta Outlook automatiskt öppna inkommande e-postbilagor från din chef. Nu visar vi dig en sådan metod.Automatiskt öppna bilagor för inkommande Outlook-e-post från en specifik avsändare

Automatiskt öppna bilagor för inkommande e-post från en specifik avsändare

  1. Till att börja med, starta Outlook-applikationen.
  2. Gå sedan till VBA-redigeraren via genväg - “Alt + F11”
  3. Sätt sedan in följande VBA-kod i projektet "ThisOutlookSession".
Private Declare Function GetShortPathName Lib "kernel32" _
 Alias "GetShortPathNameA" (ByVal lpszLongPath As String, _
 ByVal lpszShortPath As String, ByVal cchBuffer As Long) As Long

Private WithEvents objItems As Outlook.Items

Private Sub Application_Startup()
    Set objItems = Outlook.Application.Session.GetDefaultFolder(olFolderInbox).Items
End Sub

'Occurs when new item arrives in Inbox
Private Sub objItems_ItemAdd(ByVal Item As Object)
    Dim objMail As Outlook.MailItem
    Dim objWsShell As Object
    Dim strTempFolder As String
    Dim objAttachments As Outlook.Attachments
    Dim objAttachment As Attachment
    Dim strFileName As String
 
    If Item.Class = olMail Then
       Set objMail = Item
       'Change sender email address
       If objMail.SenderEmailAddress = "boss@datanumen.com" Then
          Set objWShell = CreateObject("WScript.Shell")
          strTempFolder = Environ("Temp") & "\"
 
          Set objWsShell = CreateObject("WScript.Shell")
          Set objAttachments = objMail.Attachments
          If objAttachments.Count > 0 Then
             For Each objAttachment In objAttachments
                 strFileName = objAttachment.DisplayName
                 On Error Resume Next
                 Kill strTempFolder & strFileName
                 On Error GoTo 0
 
                 'Save the attachment
                 objAttachment.SaveAsFile strTempFolder & strFileName
 
                 'Open the attachment
                 strFileName = GetShortFileName(strTempFolder & strFileName)
                 On Error Resume Next
                 objWsShell.Run strFileName
             Next
          End If
        End If
    End If
End Sub

Function GetShortFileName(ByVal FullPath As String) As String
    Dim lAns As Long
    Dim sAns As String
    Dim iLen As Integer
 
    On Error Resume Next

    If Dir(FullPath) <> "" Then
       sAns = Space(255)
       lAns = GetShortPathName(FullPath, sAns, 255)
       GetShortFileName = Left(sAns, lAns)
    End If
End Function

VBA-kod - Auto Öppna bilagor för inkommande e-post från en specifik avsändare

  1. Stäng sedan VBA-redigeraren.
  2. Starta slutligen om Outlook-programmet för att aktivera det nya makrot.
  3. Från och med nu, varje gång när ett nytt e-postmeddelande från den specifika avsändaren anländer till din inkorg, öppnar Outlook automatiskt bilagorna i det här e-postmeddelandet.Auto Öppna bilagor

Applicera reparationsverktyget för inkorgen

När din Outlook-datafil är skadad, vad skulle du göra då? För det första kan du först använda det inbyggda Outlook-fixverktyget - Scanpst. Det kan lösa några små problem som är inblandade i din Outlook. Förutsatt att det här verktyget misslyckas är det hög tid att tillgripa ett mycket mer erfaret och pålitligt externt verktyg, t.ex. DataNumen Outlook Repair.

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 skadad mdf och Outlook-programvara för reparationsprogramvara. För mer information besök www.datanumen.com

Kommentarer är stängda.