KutoolsforOffice — 一套方案,五大工具。事半功倍。三月特賣:20% 折扣

如何在 Excel 下拉式清單輸入時啟用自動完成?

作者Siluvia修改日期

對於包含大量選項的資料驗證下拉式清單,您往往需要在清單中上下捲動才能找到目標項目,或必須在儲存格中完整且正確地輸入整個詞語。是否有辦法讓下拉清單在您輸入對應字元時自動完成選項?這將大幅提升使用者處理含下拉清單工作表的效率。本教學將為您介紹兩種實用方法,協助達成此目標。

展示 Excel 下拉式清單中自動完成功能的螢幕截圖

使用 VBA 程式碼讓下拉式清單自動完成
只需 2 秒即可輕鬆讓下拉列表自動完成

更多下拉式清單教學……


使用 VBA 程式碼讓下拉式清單自動完成

請依照下列步驟操作,即可在輸入對應字母後,讓儲存格的下拉式清單自動完成。

首先,您需要在工作表中插入一個組合框,並調整其內容。

  1. 開啟包含您要啟用自動完成功能之儲存格下拉式清單的工作表。
  2. 在插入組合框之前,您需要先將「開發人員」索引標籤新增至 Excel 功能區。如果您的功能區已顯示「開發人員」索引標籤,請直接跳至步驟 3. 否則,請依照下列步驟將「開發人員」索引標籤加入功能區:按一下「檔案」>「選項」以開啟「Excel 選項」視窗;在左側窗格中點選「自訂功能區」,勾選「開發人員」方塊,再按一下「確定」按鈕。請參閱截圖:
    顯示啟用 Excel「開發人員」索引標籤的 Excel 選項視窗螢幕截圖
  3. 按一下「開發人員」>「插入」>「組合框(ActiveX 控制項)」。
    在 Excel「開發人員」工具下選取「組合框」的螢幕截圖
  4. 在目前的工作表中插入一個組合框,接著對其按一下滑鼠右鍵,並從快捷功能表中選擇「內容」。
    展示在 Excel 中繪製並選取組合框屬性的螢幕截圖
  5. 在「內容」對話方塊中,請將「(Name)」欄位的原文本替換為「TempCombo」。
    Excel 組合框的「屬性」對話框螢幕截圖,將其重新命名為 TempCombo
  6. 按一下「開發人員」>「設計模式」即可關閉設計模式。

接著,套用下方的 VBA 程式碼

  1. 在目前工作表的索引標籤上按一下滑鼠右鍵,然後從快捷功能表中選取「檢視程式碼」。請參閱以下截圖:
    顯示在 Excel 中透過快捷選單存取目前工作表「檢視程式碼」的螢幕截圖
  2. 在開啟的「Microsoft Visual Basic for Applications」視窗中,請將下方的 VBA 程式碼複製並貼到工作表的程式碼視窗中。
    VBA 程式碼:在輸入時自動完成下拉式清單
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    'Update by Extendoffice: 2020/01/16
        Dim xCombox As OLEObject
        Dim xStr As String
        Dim xWs As Worksheet
        Dim xArr
        
        Set xWs = Application.ActiveSheet
        On Error Resume Next
        Set xCombox = xWs.OLEObjects("TempCombo")
        With xCombox
            .ListFillRange = ""
            .LinkedCell = ""
            .Visible = False
        End With
        If Target.Validation.Type = 3 Then
            Target.Validation.InCellDropdown = False
            Cancel = True
            xStr = Target.Validation.Formula1
            xStr = Right(xStr, Len(xStr) - 1)
            If xStr = "" Then Exit Sub
            With xCombox
                .Visible = True
                .Left = Target.Left
                .Top = Target.Top
                .Width = Target.Width + 5
                .Height = Target.Height + 5
                .ListFillRange = xStr
                If .ListFillRange = "" Then
                    xArr = Split(xStr, ",")
                    Me.TempCombo.List = xArr
                End If
                .LinkedCell = Target.Address
            End With
            xCombox.Activate
            Me.TempCombo.DropDown
        End If
    End Sub
    Private Sub TempCombo_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
        Select Case KeyCode
            Case 9
                Application.ActiveCell.Offset(0, 1).Activate
            Case 13
                Application.ActiveCell.Offset(1, 0).Activate
        End Select
    End Sub
    展示為啟用 Excel 下拉式清單自動完成功能而新增的 VBA 程式碼螢幕截圖
  3. 同時按下「Alt + Q」鍵,即可關閉 Microsoft Visual Basic 應用程式視窗。

從現在起,只要您點擊下拉式清單儲存格,清單就會自動彈出。您還可直接輸入字母,系統將自動在選取的儲存格中完成對應項目。請參閱以下截圖:

展示 Excel 下拉式清單中自動完成功能的螢幕截圖

注意:此程式碼不適用於合併。

只需 2 秒即可輕鬆讓下拉列表自動完成

對多數 Excel 使用者來說,上述 VBA 方法不易掌握;但透過 Kutools for Excel 的「使下拉列表可搜尋」功能,您只需 2 秒就能輕鬆為資料驗證下拉列表啟用自動完成功能,且適用於所有 Excel 版本。

Kutools for Excel 提供超過 300 項進階功能,簡化複雜作業,提升創造力與效率。整合 AI 功能,Kutools 能精準自動化各項任務,讓資料管理輕鬆無負擔。Kutools for Excel 的詳細資訊……         免費試用……
  1. 若要啟用下拉式清單的自動完成功能,請先選取包含該下拉式清單的儲存格範圍,然後切換至「Kutools」索引標籤,依序點選「下拉列表」>「使下拉列表可搜尋、自動彈出」。
  2. 在「使下拉列表可搜尋」對話方塊中,點擊「確定」按鈕即可儲存設定。
  3. Kutools 設定可搜尋下拉式清單的 Excel 螢幕截圖

結果

完成設定後,當您在限定區域內點選下拉式儲存格,清單方塊便會隨即出現。當您輸入字元時,只要清單中有項目與輸入內容完全相符,該完整詞語就會立即在清單方塊中反白標示;此時只需按下 ENTER 鍵,即可將其自動填入下拉式儲存格。

使用 Kutools 在 Excel 下拉式清單中展示自動完成功能的示範

注意:若要使用此功能,請 下載並安裝 Kutools for Excel。或者,您也可以按一下以深入了解此功能

相關文章:

如何在 Excel 中建立含多個核取方塊的下拉式清單?
許多 Excel 使用者都希望能在下拉式清單中一次選取多個項目,因此想建立含多個核取方塊的清單。然而,僅靠資料驗證功能其實無法實現此需求。本教學將為您示範兩種在 Excel 中建立含多個核取方塊之下拉式清單的實用方法,輕鬆解決這個常見難題!

在 Excel 中從其他活頁簿建立下拉式清單
在同一活頁簿的不同工作表之間建立資料驗證下拉式清單相當簡單。但若清單資料位於另一個活頁簿中,該如何設定?本教學將詳細說明如何在 Excel 中輕鬆從其他活頁簿建立下拉式清單,助您提升效率、靈活整合資料!

在 Excel 中建立可搜尋的下拉式清單
當下拉式清單包含大量選項時,要找到合適的項目往往費時費力。我們先前曾介紹過一種方法:當您在下拉式方塊中輸入首字母,清單就會自動完成選項。除了自動完成功能,您還能進一步為下拉式清單加入搜尋功能,大幅提升查找效率!立即嘗試本教學中的方法,打造更聰明、更高效的 Excel 體驗。

在 Excel 下拉式清單中選取值時,自動填入對應的其他儲存格內容
假設您已根據儲存格範圍 B8:B14 建立下拉式清單。當您在清單中選取任一選項時,希望對應的 C8:C14 儲存格內容能自動填入指定位置。本教學提供的方法將助您輕鬆實現此功能!

更多下拉式清單教學……

最佳 Office 生產力工具

🤖KUTOOLS AI 助手:基於以下內容徹底革新數據分析:智慧執行     產生程式碼  建立自訂公式    分析資料並產生圖表  呼叫增強函數……
熱門功能尋找、醒目提示或標記重複值     刪除空白行     合併列或儲存格而不遺失資料     不使用公式的四捨五入……
高級 LOOKUP多重條件 VLookup    多重數值 VLookup     跨多個工作表 VLookup      模糊查找……
高級下拉列表快速建立下拉式清單     相依式下拉式清單     多選下拉式清單……
欄位管理員新增指定數量的欄位移動欄位切換隱藏欄位的可見狀態比較範圍與欄位……
精選功能網格聚焦     設計視圖   增強編輯欄    工作簿與工作表管理員     資源庫(自動文字)  日期提取     合併工作表    加密/解密儲存格    依清單傳送電子郵件     超級篩選      特殊篩選(篩選粗體儲存格/斜體/刪除線……) ......
頂尖 15 工具組12 文字工具添加文本刪除特定字符,……)   50+ 圖表 類型甘特圖,……)   40+ 實用公式基於生日計算年齡,……)   19 插入工具插入二維碼從路徑插入圖片,……)   12 轉換工具金額轉大寫匯率轉換,……)   7 合併和拆分工具高級合併行分割儲存格,……)……以及更多
在您的慣用語言中使用 Kutools—支援英文、西班牙文、德文、法文、中文及另外 40+ 種語言!

運用 Kutools for Excel 強化您的 Excel 技能,體驗前所未有的高效能!Kutools for Excel 提供超過 300 項進階功能,大幅提升生產力並節省寶貴時間。立即點擊,取得您最需要的功能……


Office Tab 為 Office 帶來分頁式介面,讓您的工作更輕鬆自在!

  • 在 Word、Excel、PowerPoint 中啟用分頁式編輯與閱讀功能,以及 Access、Visio 與 Project。
  • 在同視窗的新分頁中開啟並建立多份文件,而非另開新視窗。
  • 每天為您提升 50% 的工作效率,並省下數百次滑鼠點擊!

所有 Kutools 增益集,一個安裝程式

Kutools for Office 套件整合了 Excel、Word、Outlook 與 PowerPoint 的增益集,以及 Office Tab Pro,非常適合需要跨多個 Office 應用程式協作的團隊使用!

ExcelWordOutlookTabsPowerPoint
  • 全能套件— 包含 Excel、Word、Outlook 與 PowerPoint 增益集,以及 Office Tab Pro
  • 一個安裝程式,一個授權— 數分鐘內即可完成設定(支援 MSI)
  • 協同運作更出色— 在多個 Office 應用程式間實現流暢的生產力體驗
  • 30 天完整功能試用— 無需註冊,無需信用卡
  • 超值之選— 比單獨購買各增益集更省費用