Hoppa till huvudinnehåll

Hur skapar man en rullgardinslista för ämnen i Outlook?

Du kan ha olika förinställda e-postämnen som måste distribueras till olika mottagare i Outlook. Det skulle vara mycket effektivt att ha en rullgardinsmeny för ämnesraden för att välja ett ämne utan att skriva det manuellt när du skriver ett e-postmeddelande. Precis som gif-filen som visas nedan. Denna handledning innehåller tre VBA-koder som hjälper dig att skapa en rullgardinslista med olika förinställda ämnen. När du skriver ett e-postmeddelande kan du välja vilket ämne du behöver från rullgardinsmenyn för att automatiskt fylla i ämnesraden. Följ steg-för-steg-guiden för att få det gjort.


Skapa en rullgardinslista för ämnen i Outlook med VBA-kod

Faktum är att Outlook inte tillåter att lägga till en rullgardinslista i ämnesraden. Här behöver du skapa ett användarformulär och kombinera det med VBA-koder för att fylla i det.

1. Starta din Outlook, tryck på andra + F11 nycklar för att öppna Microsoft Visual Basic för applikationer fönster.

2. I Microsoft Visual Basic för applikationer fönstret klickar Insert > Userform.

3. Sedan Användarformulär1 är införd under Project1 i den vänstra rutan av Visual Basic redaktör. Du måste lägga till en kombinationsruta och en kommandoknapp till detta användarformulär genom att dra ComboBox och Kommandoknapp respektive från Verktygslåda till Användarformulär1.

4. Högerklicka på kommandoknappen och välj Våra Bostäder i högerklickmenyn.

5. I Egenskaper – CommandButton1 ändra rutan Bildtext fält till OK. Denna åtgärd kommer att ändra texten som visas på kommandoknappen.

6. Dubbelklicka på det tomma området i användarformuläret för att öppna motsvarande UserForm (kod) fönstret och ersätt sedan den befintliga koden med följande VBA-kod.

VBA-kod 1: UserForm med en rullgardinslista inklusive flera förinställda e-postämnen

Private Sub UserForm_Initialize()
'Updated by Extendoffice 20220927
  With ComboBox1
    .AddItem "Subject 1"
    .AddItem "Subject 2"
    .AddItem "Subject 3"
    .AddItem "Subject 4"
    .AddItem "Subject 5"
    .AddItem "No change"
  End With
End Sub

Private Sub CommandButton1_Click()
  GCbbIndex = ComboBox1.ListIndex
  GSelSubject = ComboBox1.Value
  Unload Me
End Sub

Anmärkningar: I koden, den Ämne 1, 2, 3, 4 och 5 är de förinställda e-postämnen du vill använda i dina e-postmeddelanden. "Ingen förändring” betyder att inte ändra något av det befintliga e-postämnet. Du kan ändra de förinställda e-postämnena i VBA-koden enligt dina behov.

7. Dubbelklicka Project1 > Microsoft Outlook-objekt > ThisOutlookSession. Kopiera sedan följande VBA-kod till fönstret ThisOutlookSession (Code).

VBA-kod 2 används i ThisOutlookSession-fönstret

Public WithEvents GExplorer As Explorer
'Updated by Extendoffice 20220927
Private Sub Application_Startup()
  Set GExplorer = Application.ActiveExplorer
End Sub

Private Sub GExplorer_InlineResponse(ByVal Item As Object)
  Set GInlineMail = Item
End Sub

8. Fortsätt att klicka Insert > Modulerna i Visual Basic redaktör. Kopiera sedan och klistra in följande VBA-kod i Modul (kod) fönster.

VBA-kod 3 används i modulfönstret

Public GCbbIndex As Long
'Updated by Extendoffice 20220927
Public GSelSubject As String
Public GInlineMail As MailItem
Public Sub ChangeSubject()
  Dim xItem As MailItem
  Dim xMail As Outlook.MailItem
  On Error Resume Next
  Select Case TypeName(Application.ActiveWindow)
    Case "Explorer"
      Set xMail = GInlineMail
      Debug.Print "Explorer"
    Case "Inspector"
      Set xMail = Application.ActiveInspector.CurrentItem
      Debug.Print "Inspector"
  End Select
  UserForm1.Show
  If (GCbbIndex <> -1) And (GSelSubject <> "no change") Then
    xMail.Subject = GSelSubject
  End If
End Sub

9. Spara koderna och tryck på andra + Q för att stänga Visual Basic Editor fönstret och återgå till Outlook-applikationen.

10. Klicka på Ny E-post knapp under Hem fliken för att skapa ett e-postmeddelande.

11. Klicka på i det nya meddelandefönstret Anpassa snabbåtkomstverktygsfältet > Fler kommandon.

12. I Outlook-Val i dialogrutan måste du konfigurera enligt följande.

12.1) Välj Makron i Välj kommandon från rullgardinsmeny
12.2) Välj Project1.ChangeSubject i kommandolistan;
12.3) Klicka på Lägg till knapp;
12.4) Klicka på OK knapp. Se skärmdump:

13. Då kan du se att en knapp har lagts till i menyfliksområdet i meddelandefönstret.

14. Nu måste du starta om din Outlook.

15. När du skriver ett e-postmeddelande, om du behöver infoga ett förinställt ämne, behöver du bara klicka på den nyligen tillagda knappen på menyfliksområdet för att visa användarformuläret, välj ett ämne från rullgardinsmenyn och klicka sedan på OK knappen för att fylla i den i ämnesraden.

Anmärkningar:

1) Du kan ändra det befintliga ämnet med valfritt ämne valt i rullgardinsmenyn;
2) Denna metod fungerar bra när du svarar på eller vidarebefordrar ett e-postmeddelande i ett nytt fönster;
3) Om du tenderar att svara på e-postmeddelanden direkt från läsrutan istället för att öppna ett separat fönster, kan du ta fram användarformuläret enligt följande.
3.1) Klicka Utvecklare > Makron > Project1.ChangeSubject. Se skärmdump:

3.2) När användarformuläret dyker upp, välj ett förinställt ämne från rullgardinsmenyn och klicka på OK knappen ändras det ursprungliga ämnet omedelbart.

4) Om du väljer Ingen förändring i rullgardinsmenyn kommer det ursprungliga ämnet att behållas utan några ändringar.

Bästa kontorsproduktivitetsverktyg

Kutools för Outlook - Över 100 kraftfulla funktioner för att överladda din Outlook

🤖 AI Mail Assistant: Instant proffs-e-postmeddelanden med AI-magi – ett klick för geniala svar, perfekt ton, flerspråkig behärskning. Förvandla e-post utan ansträngning! ...

📧 Email Automation: Frånvaro (tillgänglig för POP och IMAP)  /  Schemalägg Skicka e-post  /  Auto CC/BCC enligt regler när du skickar e-post  /  Automatisk vidarebefordran (avancerade regler)   /  Lägg automatiskt till hälsning   /  Dela automatiskt e-postmeddelanden med flera mottagare i individuella meddelanden ...

📨 Email Management: Hämta enkelt e-postmeddelanden  /  Blockera bluff-e-postmeddelanden av ämnen och andra  /  Ta bort duplicerade e-postmeddelanden  /  Avancerad Sökning  /  Konsolidera mappar ...

📁 Bilagor ProBatch Spara  /  Batch lossa  /  Batchkomprimera  /  Automatisk sparning   /  Auto Lossa  /  Automatisk komprimering ...

🌟 Gränssnittsmagi: 😊 Fler vackra och coola emojis   /  Öka din Outlook-produktivitet med flikar  /  Minimera Outlook istället för att stänga ...

👍 Underverk med ett klick: Svara alla med inkommande bilagor  /   E-postmeddelanden mot nätfiske  /  🕘Visa avsändarens tidszon ...

👩🏼‍🤝‍👩🏻 Kontakter och kalender: Lägg till kontakter i grupp från valda e-postmeddelanden  /  Dela upp en kontaktgrupp till individuella grupper  /  Ta bort påminnelser om födelsedag ...

Över 100 funktioner Vänta på din utforskning! Klicka här för att upptäcka mer.

Läs mer       Gratis nedladdning      Inköp
 

 

Comments (7)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Would it be possible to create an external source for:
.AddItem "Subject 1"
.AddItem "Subject 2"
.AddItem "Subject 3"
.AddItem "Subject 4"
.AddItem "Subject 5"

So the list can be shared and edited for multiple computers?
This comment was minimized by the moderator on the site
Hi,

I have made the procedure but when i clic on the macro button, they don't have any action ?
Could you help me ?
This comment was minimized by the moderator on the site
Hi,

Sorry for the inconvenience. Did you follow the instructions provided in the post exactly? Can you tell me which version of Excel you are using?
This comment was minimized by the moderator on the site
I would like to creat an E-mail draft with such a drop down list for the subject.
Is it possible to attache this function to an mail template or does it have to be installed in the software of each user?
This comment was minimized by the moderator on the site
Hi Hana,

The code can't be attached to an email template, users who need to use this dropdown list will need to follow the steps in the tutorial to add the code to their Outlook.
This comment was minimized by the moderator on the site
Hi,

This is great. Is it possible to do the same for Outlook Calendar invites...meetings and appointments?
This comment was minimized by the moderator on the site
Hi James Marr,

This method does not support Outlook Calendar at the moment. Sorry for the inconvenience.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations