Salt la conținutul principal

Cum se creează o listă derulantă pentru subiecte în Outlook?

Este posibil să aveți diferite subiecte de e-mail prestabilite care trebuie distribuite către diferiți destinatari în Outlook. Ar fi foarte eficient să existe o listă derulantă cu subiect pentru a selecta un subiect fără a-l introduce manual atunci când compuneți un e-mail. La fel ca gif-ul demonstrat mai jos. Acest tutorial oferă trei coduri VBA pentru a vă ajuta să creați o listă derulantă cu diferite subiecte prestabilite. Când compuneți un e-mail, puteți selecta orice subiect de care aveți nevoie din meniul drop-down pentru a completa automat linia de subiect. Vă rugăm să urmați ghidul pas cu pas pentru a finaliza.


Creați o listă derulantă pentru subiecte în Outlook cu cod VBA

De fapt, Outlook nu permite adăugarea unei liste derulante în linia de subiect. Aici trebuie să creați un formular de utilizator și să îl combinați cu coduri VBA pentru a-l completa.

1. Lansați Outlook, apăsați butonul Alt + F11 tastele pentru a deschide Microsoft Visual Basic pentru aplicații fereastră.

2. În Microsoft Visual Basic pentru aplicații fereastră, faceți clic pe Insera > Formular utilizator.

3. Apoi UserForm1 este introdus sub Project1 în panoul din stânga al Visual Basic editor. Trebuie să adăugați o casetă combinată și un buton de comandă la acest formular de utilizator trăgând caseta combinată și Butonul de comanda respectiv din Toolbox la UserForm1.

4. Faceți clic dreapta pe butonul de comandă și selectați Proprietăţi în meniul cu clic dreapta.

5. În Proprietăți – CommandButton1 , schimbați fișierul Legendă domeniu la OK. Această acțiune va schimba textul afișat pe butonul de comandă.

6. Faceți dublu clic pe zona goală din UserForm pentru a deschide forma corespunzătoare UserForm (Cod) fereastră, apoi înlocuiți codul existent cu următorul cod VBA.

Cod VBA 1: Formular de utilizator cu o listă derulantă care include mai multe subiecte de e-mail prestabilite

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

notițe: În cod, Subiectul 1, 2, 3, 4 și 5 sunt subiectele de e-mail prestabilite pe care doriți să le utilizați în e-mailurile dvs. „Nici o schimbare” înseamnă a nu schimba nimic din subiectul e-mailului existent. Puteți modifica subiectele presetate ale e-mailului în codul VBA în funcție de nevoile dvs.

7. Dublu click Project1 > Obiecte Microsoft Outlook > Această sesiune Outlook. Apoi copiați următorul cod VBA în fereastra ThisOutlookSession (Code).

Codul VBA 2 utilizat în fereastra ThisOutlookSession

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. Continuați să faceți clic Insera > Module în Visual Basic editor. Apoi copiați și inserați următorul cod VBA în fișierul Modul (Cod) fereastră.

Codul VBA 3 folosit în fereastra Modul

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. Salvați codurile și apăsați tasta Alt + Q tastele pentru a închide Editor Visual Basic fereastra și reveniți la aplicația Outlook.

10. Faceți clic pe Email nou buton sub Acasă pentru a crea un e-mail.

11. În fereastra de mesaj nou, faceți clic pe Personalizați bara de instrumente cu acces rapid > Mai multe comenzi.

12. În Opțiuni Outlook casetă de dialog, trebuie să configurați după cum urmează.

12.1) Selectați Macrocomenzi în Alegeți comenzi de la lista verticală;
12.2) Selectați Project1.ChangeSubject în caseta de listă a comenzilor;
12.3) Faceți clic pe Adăuga buton;
12.4) Faceți clic pe OK buton. Vedeți captura de ecran:

13. Apoi puteți vedea că un buton a fost adăugat la panglica ferestrei de mesaje.

14. Acum trebuie să reporniți Outlook.

15. Când compuneți un mesaj de e-mail, dacă trebuie să introduceți un subiect prestabilit, trebuie doar să faceți clic pe butonul nou adăugat de pe panglică pentru a afișa formularul de utilizator, să selectați un subiect din meniul derulant și apoi să faceți clic pe OK butonul pentru a o completa în linia de subiect.

notițe:

1) Puteți schimba subiectul existent cu orice subiect selectat în lista derulantă;
2) Această metodă funcționează bine atunci când răspundeți sau redirecționați un e-mail într-o fereastră nouă;
3) Dacă aveți tendința de a răspunde la e-mailuri în linie din panoul de citire, în loc să deschideți o fereastră separată, puteți afișa formularul de utilizator după cum urmează.
3.1) Faceți clic pe Dezvoltator > Macrocomenzi > Project1.ChangeSubject. Vedeți captura de ecran:

3.2) Când apare formularul de utilizator, selectați un subiect prestabilit din lista derulantă și faceți clic pe OK butonul, subiectul original va fi schimbat imediat.

4) Dacă selectați Nici o schimbare în meniul derulant, subiectul original va fi păstrat fără nicio modificare.

Cele mai bune instrumente de productivitate de birou

Kutools pentru Outlook - Peste 100 de funcții puternice pentru a vă supraalimenta Outlook

🤖 AI Mail Assistant: E-mailuri profesionale instantanee cu magie AI--un singur clic pentru răspunsuri geniale, ton perfect, stăpânire în mai multe limbi. Transformați e-mailurile fără efort! ...

📧 Automatizare e-mail: În afara biroului (disponibil pentru POP și IMAP)  /  Programați trimiterea de e-mailuri  /  CC/BCC automat după reguli la trimiterea e-mailului  /  Redirecționare automată (Reguli avansate)   /  Adăugare automată felicitare   /  Împărțiți automat e-mailurile cu mai mulți destinatari în mesaje individuale ...

📨 Managementul e-mail: Amintește-ți cu ușurință e-mailurile  /  Blocați e-mailurile înșelătorii de către subiecți și alții  /  Ștergeți e-mailurile duplicate  /  Cautare Avansata  /  Consolidați foldere ...

📁 Atașamente ProSalvați în serie  /  Detașare lot  /  Compresă în loturi  /  Salvare automata   /  Detașare automată  /  Comprimare automată ...

🌟 Magia interfeței: 😊Mai multe emoji drăguțe și cool   /  Îmbunătățiți-vă productivitatea Outlook cu vizualizările cu file  /  Minimizați Outlook în loc să închideți ...

???? Minuni cu un singur clic: Răspundeți tuturor cu atașamentele primite  /   E-mailuri anti-phishing  /  🕘Afișați fusul orar al expeditorului ...

👩🏼‍🤝‍👩🏻 Contacte și calendar: Adăugați în lot contacte din e-mailurile selectate  /  Împărțiți un grup de contact în grupuri individuale  /  Eliminați mementouri de ziua de naștere ...

Peste 100 Caracteristici Așteaptă explorarea ta! Click aici pentru a descoperi mai multe.

 

 

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