Skip to main content

如何在Outlook中為郵件標題創建下拉列表?

Author: Siluvia Last Modified: 2025-05-12

您可能有不同的預設郵件標題,需要在Outlook中分發給不同的收件人。如果能在撰寫郵件時擁有一個標題行的下拉列表來選擇標題,而無需手動輸入,將非常高效。就像下面的gif演示的一樣。本教程提供三個VBA代碼,幫助您創建一個包含不同預設標題的下拉列表。撰寫郵件時,您可以從下拉列表中選擇所需的任何標題,自動填入標題行。請按照逐步指南完成操作。


使用VBA代碼在Outlook中創建郵件標題下拉列表

實際上,Outlook不允許在標題行添加下拉列表。這裡您需要創建一個用戶表單並將其與VBA代碼結合來完成此操作。

1. 啟動您的Outlook,按「Alt」+「F11」鍵打開「Microsoft Visual Basic for Applications」窗口。

2. 在「Microsoft Visual Basic for Applications」窗口中,點擊「插入」>「用戶表單」。

doc-subject-line-drop-down-list-1

3. 然後在「Visual Basic」編輯器左側窗格中的「Project1」下插入了「UserForm1」。您需要通過分別從「工具箱」拖動「ComboBox」和「CommandButton」到「UserForm1」,將一個組合框和命令按鈕添加到該用戶表單中。

doc-subject-line-drop-down-list-2

4. 右鍵單擊命令按鈕並在右鍵菜單中選擇「屬性」。

doc-subject-line-drop-down-list-3

5. 在「Properties – CommandButton1」窗格中,將「Caption」字段更改為「OK」。此操作將更改命令按鈕上顯示的文字。

doc-subject-line-drop-down-list-4

6. 雙擊UserForm的空白區域以打開相應的「UserForm(代碼)」窗口,然後用以下VBA代碼替換現有代碼。

VBA代碼1:帶有多個預設郵件標題的用戶表單下拉列表

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

doc-subject-line-drop-down-list-5

注意:在代碼中,「Subject 1, 2, 3, 4」和「5」是您希望在郵件中使用的預設郵件標題。「No change」表示不更改現有的郵件標題。您可以根據需要更改VBA代碼中的預設郵件標題。

7. 雙擊「Project1」>「Microsoft Outlook Objects」>「ThisOutlookSession」。然後將以下VBA代碼複製到「ThisOutlookSession(代碼)」窗口中。

用於ThisOutlookSession窗口的VBA代碼2

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

doc-subject-line-drop-down-list-6

8. 繼續在「Visual Basic」編輯器中點擊「插入」>「模塊」。然後將以下VBA代碼複製並粘貼到「模塊(代碼)」窗口中。

用於模塊窗口的VBA代碼3

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

doc-subject-line-drop-down-list-7

9. 保存代碼並按「Alt」+「Q」鍵關閉「Visual Basic Editor」窗口並返回到Outlook應用程序。

10. 點擊「Home」選項卡下的「新建郵件」按鈕以創建郵件。

11. 在新郵件窗口中,點擊「自定義快速訪問工具欄」>「更多命令」。

doc-subject-line-drop-down-list-8

12. 在「Outlook選項」對話框中,您需要進行如下配置。

12.1) 在「從以下位置選擇命令」下拉列表中選擇「宏」;
12.2) 在命令列表框中選擇「Project1.ChangeSubject」;
12.3) 點擊「新增」按鈕;
12.4) 點擊「確定」按鈕。見截圖:

doc-subject-line-drop-down-list-9

13. 然後您可以看到一個按鈕 doc-subject-line-drop-down-list-10 已經被添加到郵件窗口的功能區中。

doc-subject-line-drop-down-list-11

14. 現在您需要重新啟動Outlook。

15. 撰寫郵件時,如果您需要插入預設標題,只需點擊功能區上新增的按鈕以顯示用戶表單,從下拉菜單中選擇一個標題,然後點擊「確定」按鈕即可將其填充到標題行。

注意

1) 您可以使用下拉列表中選擇的任何標題更改現有的標題;
2) 此方法在新窗口中回覆或轉寄郵件時效果很好;
3) 如果您傾向於從閱讀窗格內聯回覆郵件而不是打開單獨的窗口,您可以按照以下方式調出用戶表單。
3.1) 點擊「開發者」>「宏」>「Project1.ChangeSubject」。見截圖:

doc-subject-line-drop-down-list-13

3.2) 當用戶表單彈出時,從下拉列表中選擇一個預設標題並點擊「確定」按鈕,原始標題將立即更改。
4) 如果您在下拉菜單中選擇「No change」,則原始標題將保留而不做任何更改。

Outlook中的AI郵件助理:更聰明的回覆,更清晰的溝通(一鍵奇蹟!) 免費

使用Kutools for Outlook的AI郵件助理簡化您的日常Outlook任務。這個強大的工具會從您過去的郵件中學習,提供智能且準確的答覆,優化您的郵件內容,並幫助您輕鬆起草和潤色郵件。
doc ai email handle

此功能支援:

  • 智能回覆:根據您過去的對話獲得量身定制、精確且隨時可用的回覆。
  • 增強內容:自動優化您的郵件文字以提高清晰度和影響力。
  • 輕鬆撰寫:只需提供關鍵字,讓AI處理其餘部分,並有多種寫作風格可供選擇。
  • 智能擴展:通過上下文感知建議來拓展您的思路。
  • 摘要生成:即時獲取長郵件的簡潔概述。
  • 全球觸及:輕鬆將您的郵件翻譯成任何語言。

此功能支援:

  • 智能郵件回覆
  • 優化的內容
  • 基於關鍵字的草稿
  • 智能內容擴展
  • 郵件摘要生成
  • 多語言翻譯

最重要的是,此功能永遠完全免費不要再等待了——立即下載AI郵件助理並享受吧