Hvordan lage en ny avtale automatisk når en e-post er flagget i Outlook

Noen ønsker å automatisk eller raskt opprette en ny Outlook-avtale når de flagger en e-post. Denne artikkelen vil introdusere en tilnærming for å realisere det med Outlook VBA.

Noen ganger kan jeg motta en e-post som nevner en avtale eller et møte. Men det er bare en e-post i stedet for et vanlig møteelement i Outlook. I dette tilfellet må jeg opprette en ny avtale i Outlook-kalenderen min manuelt. Det er litt plagsomt. Så jeg skulle ønske at Outlook automatisk kan opprette en ny avtale. Likevel har Outlook ingen innfødt støtte for oss for å opprette en ny avtale automatisk når vi flagger en e-post. Derfor, for å oppnå det, velger jeg å benytte meg av Outlook VBA. Her er de detaljerte VBA-kodene og trinnene.

Opprett en ny avtale automatisk når en e-post er flagget

  1. For det første, bytt til "Utvikler" -fanen og trykk "Visual Basic" -knappen i "Kode" -gruppen.Visual Basic-knapp
  2. Så i det nye "Microsoft Visual Basic for Applications"-vinduet, må du dobbeltklikke på "ThisOutlookSession" for å åpne dette prosjektet.
  3. Og deretter kopierer og limer du inn følgende VBA-koder.
Public WithEvents olItems As Outlook.Items

Private Sub Application_Startup()
    Set olItems = Session.GetDefaultFolder(olFolderInbox).Items
End Sub

Private Sub olItems_ItemChange(ByVal Item As Object)
    Dim oAppt As AppointmentItem
    Dim strMsg As String
    Dim nRes As Integer
 
    On Error Resume Next
 
    If TypeName(Item) = "MailItem" And Item.IsMarkedAsTask = True Then
       strMsg = "Do you want to create a new appointment"
       nRes = MsgBox(strMsg, vbYesNo + vbQuestion, "Confirm Creating Appointment")
       If nRes = vbYes Then
          Set oAppt = Application.CreateItem(olAppointmentItem)
          With oAppt
               .Subject = "New Appt: " & Item.Subject
               .Location = InputBox("Enter the Location, please.")
               'Type the concrete time, such as "12/29/2015 15:30"
               .Start = InputBox("Enter a specific time (format: MM/DD/YYYY hh:mm), please.")
               .Duration = 120
               .Body = "New Appointment: " & vbCrLf & vbCrLf & Item.Body
               .Attachments.Add Item
               .ReminderSet = True
               .ReminderMinutesBeforeStart = 30
               'Use ".Save" to directly save the new appointment
               .Display
          End With
       End If
 
      'To clear the flag on the email
      'If you want to keep email flagged, remove the following 4 lines
       With Item
            .ClearTaskFlag
            .Save
       End With
    End If
End Sub

Kopier VBA-kodene til ThisOutlookSession

  1. Deretter bør du bruke "Digitalt sertifikat for VBA-prosjekter" for å opprette et nytt sertifikat og signere det nåværende "ThisOutlookSession"-prosjektet.Signer ThisOutlookSession-prosjektet digitalt
  2. Etter det kan du gå ut av "Visual Basic"-vinduet og endre makroinnstillinger for kun å tillate digitalt signerte makroer.Tillat kun digitalt signerte makroer
  3. Til slutt kan du prøve.
  • Først setter du på en e-post og klikker på "Flagg"-ikonet. Du vil få en melding, som følgende skjermbilde:Bekreft oppretter avtale
  • Etter å ha valgt "Ja", må du spesifisere plasseringen og trykke "OK"-knappen.Angi lokasjon
  • Deretter må du angi avtaletidspunkt.Angi et bestemt tidspunkt
  • Til slutt, etter å ha klikket "OK", åpnes en ny avtale, vist som bildet nedenfor:Ny avtale

Merknader:

  1. I disse VBA-kodene er påminnelsen satt til 30 minutter som standard. Du kan endre det i kodene etter eget ønske.
  2. Kodene setter avtalevarigheten til 120 minutter, nemlig 2 timer. Du kan endre ".Duration = 120"-linjen i henhold til dine behov.
  3. Hvis du ikke spesifiserte et konkret tidspunkt, vil den nye avtalen bli satt til gjeldende dato og klokkeslett som standard.
  4. Du kan legge til ".Lagre"-linjen for å lagre avtalen direkte.

Kast Outlook-problemer

Det er kjent at Outlook kan lide av forskjellige problemer. Den verste situasjonen må være Outlook-korrupsjon. Hvis Outlook-filen din er ødelagt og du har hatt en sikkerhetskopi i hånden, kan du enkelt gjenopprette din skadede Outlook-data fra sikkerhetskopier. Men hvis du ikke har noen sikkerhetskopi, må du reparere den korrupte Outlook-filen. I dette tilfellet kan du bruke det innebygde reparasjonsverktøyet, Scapst.exe, eller ty til et mer erfarent verktøy, som DataNumen Outlook Repair.

Forfatterintroduksjon:

Shirley Zhang er en datagjenopprettingsekspert innen DataNumen, Inc., som er verdensledende innen datagjenopprettingsteknologier, inkludert reparasjon SQL Server mdf database problem og Outlook-reparasjonsprodukter. For mer informasjon besøk www.datanumen. Med

Kommentarer er stengt.