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

如何在 Excel 欄位中輸入重複值時,自動彈出警告提示?

作者修改日期

在許多實際應用情境中,Excel 工作表中的資料完整性與準確性至關重要。例如,當記錄員工編號、產品序號或學生學號時,任何重複輸入都可能引發混淆或導致後續錯誤。為避免此情況,當您在指定欄位或範圍內輸入重複值時,系統會自動彈出警告對話方塊提醒您,如下圖所示。此功能有助於維持清單的乾淨與唯一性,並有效降低意外輸入重複資料的風險。
Excel 中重複輸入警告對話框的螢幕截圖

使用資料驗證在輸入重複值時顯示警告

使用 Kutools for Excel 在輸入重複值時顯示警告good idea3

使用 VBA 程式碼(工作表變更事件)在輸入重複值時顯示警告


使用資料驗證在輸入重複值時顯示警告

在 Excel 中,您可以搭配自訂公式運用「資料驗證」功能,有效防止在指定範圍內輸入重複項目——特別適用於唯一代碼、識別碼或名稱等情境。設定完成後,Excel 會立即警示使用者並攔截重複輸入,確保範圍內每個值皆維持唯一性,不僅省去手動檢查的麻煩,更大幅簡化大量資料的輸入作業。

設定步驟如下:

1. 選取您要防止重複項的範圍(例如 A1:A10),接著前往資料索引標籤,並點擊資料驗證> 資料驗證。請參閱下方截圖:
Excel 中「資料驗證」選項的螢幕截圖

2. 在資料驗證對話方塊中,切換至設定索引標籤,將允許設為自訂,並在公式方塊中輸入下列公式:
=COUNTIF($A$1:$A$10,A1)=1

此公式確保輸入的值在所選區域中僅出現一次。請參閱以下截圖:
「資料驗證」對話框中所用公式的螢幕截圖

參數說明:
$A$1:$A$10 定義要防止重複的範圍,而 A1 則指向該範圍的第一個儲存格。請依實際需求調整這些參照!

注意事項:範圍務必使用絕對參照()$),才能確保驗證規則正確套用至所有選取的儲存格。

3. 接下來,切換至錯誤警示索引標籤,確認已勾選輸入無效資料後顯示錯誤警示。將樣式設為停止(預設值),並輸入您偏好的警示標題與訊息。當使用者嘗試輸入重複值時,系統將立即顯示此警示!請參閱截圖:
「資料驗證」對話框中「錯誤警示」索引標籤的螢幕截圖

提示:清晰簡潔的提示訊息(例如「不允許重複輸入!」)能讓使用者在輸入重複值時,立即掌握問題所在!

4. 按一下確定以套用設定。設定完成後,只要使用者在限定區域(此處為 A1:A10)內任何位置輸入重複值,Excel 就會立即顯示警告對話方塊,並拒絕接受該重複值。
在 Excel 中輸入重複值後出現的警告對話框螢幕截圖

提示:若您希望在允許使用者保留重複輸入(以便追蹤或調查)的同時予以提醒,請在資料驗證對話方塊的錯誤警示索引標籤中,從樣式下拉式選單選擇警告,而非停止。此設定會允許重複輸入,並以警示方式標示。
針對重複項目設定的「資料驗證」警告樣式的螢幕截圖

當使用者輸入重複值時,系統將彈出警告對話方塊,您可選擇取消以保留重複值,或點選立即移除。
輸入重複項目時彈出的警告對話框螢幕截圖

適用情境:此方法適用於需在單一範圍內強制執行或監控資料輸入規則,且偏好使用無需編碼的內建解決方案的情境。優點:無需外掛程式或巨集,同時支援阻止與警告功能。缺點:若範圍大小變更,需手動更新驗證設定;僅適用於手動輸入,無法處理貼上多筆資料或由公式產生的值。


使用 Kutools for Excel 在輸入重複值時顯示警告

對於不想記憶公式、希望採用更簡便方式的使用者,Kutools for Excel 提供直覺易用的解決方案——透過其防止重複項功能,大幅簡化設定與管理流程,特別適合處理大型資料區域或需要進階重複防範選項的情境!

Kutools for Excel 提供超過 300 項進階功能,簡化複雜作業,提升創造力與效率。整合 AI 功能,Kutools 能精準自動化各項任務,讓資料管理輕鬆無負擔。Kutools for Excel 的詳細資訊……         免費試用……

安裝 Kutools for Excel 後,請依下列步驟啟用重複輸入時的警告對話方塊:(立即免費下載 Kutools for Excel!)

先選取您希望在出現重複資料時觸發警告的範圍(例如欄位或資料區域),接著前往 Kutools > 限制輸入 > 防止重複項。操作畫面請參閱下方截圖:
Excel 中 Kutools 索引標籤內「防止重複」選項的螢幕截圖

依照提示操作:先點選確認,再點選確定套用防護設定。系統將顯示確認對話方塊,引導您完成這些步驟。

選取 Kutools「防止重複」選項後出現的警告對話框螢幕截圖
選取 Kutools「防止重複」選項後出現的成功提示對話框螢幕截圖

啟用此功能後,當您在選定區域內輸入重複值,系統將立即彈出警告對話方塊,並阻止該輸入動作,以防止重複資料產生。請參閱截圖:
使用 Kutools 後,Excel 中重複輸入項目的彈出警告螢幕截圖

Kutools for Excel 提供更細緻的彈性設定:您可在禁止輸入指定字符方塊中輸入特定字元(例如 @、#、$、%),立即封鎖這些符號;或透過允許輸入下列字元功能,嚴格限定僅允許特定字元輸入。此進階功能超越基本重複防範,助您精準掌控資料品質!
Kutools「防止輸入」工具用於管理輸入字元的螢幕截圖

適用情境:此解決方案非常適合偏好高效、以介面導向操作,並需在不同範圍或活頁簿間重複套用設定的使用者。優點:操作簡易,無需記憶公式,支援更複雜的輸入規則與字元限制。缺點:需安裝 Kutools for Excel。

Kutools for Excel-透過超過 300 項必備工具全面強化 Excel,讓您的工作更快速、更輕鬆,並運用 AI 功能實現更聰明的資料處理與高效生產力!立即取得

示範:使用 Kutools for Excel 在輸入重複值時顯示警告

 
Kutools for Excel:超過 300 種實用工具隨手可得!盡享 AI 驅動功能,讓工作更聰明、更快速!立即下載!

使用 VBA 程式碼(工作表變更事件)在輸入重複值時顯示警告

若您熟悉巨集,並希望以動態且程式化的方式,在欄位偵測到重複輸入時立即提醒使用者,可運用 VBA 事件程式碼。透過實作「工作表變更」事件,Excel 將自動監控指定欄位,一旦發現重複輸入,便即時彈出自訂警告訊息方塊。此方法彈性極高,尤其適合用於客製化工作流程,或需在發生重複時執行特定操作的場景。

適用情境:此方法適用於以下情況:

  • 您需要完全自訂的彈出訊息(超越 Excel 內建提示)
  • 您所處的環境允許並啟用 VBA 巨集
  • 您的需求涵蓋較大或動態變化的範圍,且不希望頻繁調整驗證設定

優點:邏輯與訊息提示高度可自訂,並能靈活調整以符合複雜的驗證規則。
缺點:需啟用巨集且具備基本 VBA 技能;事件處理常式必須置於工作表程式碼區域(非標準模組),僅於安裝該程式碼的工作表生效。

操作步驟:
1. 在欲監控重複值的工作表標籤上按一下滑鼠右鍵,並選取檢視程式碼
2. 在編輯器中,將下列 VBA 程式碼貼到工作表程式碼視窗(非模組)中:

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim cell As Range
    Dim checkRange As Range
    Dim duplicateFound As Boolean
    Dim colRange As String
    
    colRange = "A:A" ' Set to the column you want to monitor (e.g., entire column A)
    
    Set checkRange = Intersect(Me.Range(colRange), Target)
    
    If checkRange Is Nothing Then Exit Sub
    
    Application.EnableEvents = False
    
    For Each cell In checkRange
        If WorksheetFunction.CountIf(Me.Range(colRange), cell.Value) > 1 And cell.Value <> "" Then
            MsgBox "Duplicate entry detected: '" & cell.Value & "' already exists in " & colRange, vbExclamation, "KutoolsforExcel"
            cell.ClearContents
        End If
    Next cell
    
    Application.EnableEvents = True
End Sub

3. 關閉 VBA 編輯器並返回工作表。當您在受監控的欄位(此處為 A 欄)中輸入數值時,若該數值已存在於該欄其他位置,系統將立即彈出警告視窗,並自動清除重複輸入的內容。

參數提示:

  • colRange 用於指定要檢查重複值的欄位範圍(預設為整欄 A,即 A:A)。如有需要,您可將其修改為特定範圍,例如「A1:A10」。

疑難排解提示:若巨集未執行,請確認已啟用巨集,且程式碼位於正確的工作表模組中(而非標準 VBA 模組)。按下 Alt + F11 開啟編輯器,並在專案的「Microsoft Excel 物件」下雙擊對應的工作表名稱。

實用技巧:若您希望採用不同行為(例如允許輸入重複值但僅顯示警告),可將 cell.ClearContents 改為僅彈出訊息提示視窗。

總結而言,上述各項 Excel 解決方案在防止重複資料方面皆具備獨特優勢:

  • 資料驗證——適用於簡單、無需編碼的設定,並在輸入超出已定義範圍時提供明確警示。
  • Kutools for Excel—最適合追求靈活、快速設定,並希望無需撰寫公式或 VBA 即可實現進階輸入限制的使用者!
  • VBA 工作表變更事件——適用於更進階、動態的需求,或需要自訂訊息與動作的情境。

使用 VBA 解決方案時,務必將活頁簿儲存為 Excel 啟用巨集的活頁簿(.xlsm),以確保程式碼始終保留在活頁簿中。

最佳 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 天完整功能試用— 無需註冊,無需信用卡
  • 超值之選— 比單獨購買各增益集更省費用