數位工具

Excel下拉式選單怎麼設定才好維護?清單來源、連動與貼上陷阱

「已出貨」「出貨了」「Shipped」,再加上句尾多打了一個空格的「已出貨」,龐果設計的訂單表裡,「狀態」欄同一個意思就能出現四種寫法。人眼讀起來是同一件事,Excel 卻只認字面,每一種都算不同的項目。要讓填表的人別再各自打字,辦法是做一個 excel下拉式選單,把能填的內容固定成幾個選項,用點選取代手打。

這些差異肉眼看不出來,卻會在後面出事。用 SUMIF 加總已出貨的件數,或用樞紐分析表依狀態分組,同一個狀態被拆成好幾份,總數怎麼對都不準。做出下拉選單只要幾個步驟,真正容易出問題的是之後的維護。清單來源怎麼設,決定了日後新增選項要改幾個地方;貼上資料時,規則又很容易被整個洗掉。

這兩件事的源頭,都在於下拉式選單其實不是一個獨立的功能。

Excel下拉式選單是資料驗證裡的清單規則

儲存格旁邊那個小箭頭,是「資料驗證」把「允許」設成「清單」之後產生的結果,Excel 並沒有另一個叫「下拉式選單」的功能。這條規則的目的只有一個,就是讓填表的人從選項裡挑,不再各自打字。網路上常說的 excel下拉選單,指的就是這一組設定。

資料驗證能管的事情不只清單。Microsoft 的說明列出的限制類型,包括把輸入限制為清單中預先定義的值、指定範圍外的值、特定時間範圍外的日期或時間、文字字元數,以及依其他儲存格的公式或值來驗證;設定畫面的「允許」選單裡,可選的類型有整數、實數、清單、日期、時間、文字長度與自訂。Microsoft 舉的清單範例,是把使用者輸入的部門限制為「會計」「薪資」「人力資源」這幾個選項,和這裡要做的「狀態」欄是同一個道理。

為什麼值得花這幾分鐘?以「狀態」欄來說,「待確認」、後面多一個空格的「待確認」、以及「確認中」,在 Excel 眼中是三個不同的項目。SUMIF 的準則要比對文字,樞紐分析表要把相同的文字歸成同一列,前提都是輸入的文字完全一致。選單的作用,就是在輸入的那一刻就讓文字保持一致,而不是等到整理報表時才一格一格去修。

不過它管得住的範圍有限,只管直接在儲存格裡輸入的內容;複製貼上進來的資料不在此限,這也是清單做好之後仍會被繞過的主要原因。

資料驗證的入口與適用的 Excel 版本

電腦版的入口在功能區的「資料」索引標籤,「資料工具」群組裡的「資料驗證」。Mac 版同樣在「資料」索引標籤,位於「工具」底下,按鈕上的字可能顯示為「資料驗證」或「驗證」,點開後在「允許」選單選「清單」即可。Microsoft 的建立下拉式清單說明頁,適用範圍涵蓋 Microsoft 365 的 Excel(Windows 與 Mac)、Excel 2024、2021、2019 與 2016,所以這些版本的步驟大致相通。

Excel 網頁版也能建立,只是對話方塊裡的名稱略有不同,輸入訊息的核取方塊叫「顯示訊息」,錯誤提醒的核取方塊叫「顯示提醒」,原本的「樣式」欄位叫「類型」。另外,網頁版只能編輯來源為手動輸入的下拉式清單;來源是具名範圍時,Microsoft 說明必須用電腦版 Excel 去改範圍本身。

下面提到的選單名稱,以 Microsoft 365 與 Excel 2016 以後的繁體中文介面為準,包括「資料驗證」「儲存格內允許」「來源」「忽略空白」與「儲存格內的下拉式清單」。此外,Google 試算表也有類似的功能,路徑是「資料」→「資料驗證」→「新增規則」,條件選「下拉式選單」或「下拉式選單(來自某範圍)」,並且另有可複選的設定。

龐果設計訂單表的 6 個欄位與 3 組下拉選單

後面的例子都用同一張龐果設計的訂單表,欄位有 6 個:訂單編號、客戶、服務類別、服務項目、狀態、承辦人。表中的內容都是示範用的虛構資料,不代表真實訂單。

表裡會用到三組下拉選單。「狀態」用直接輸入的方式,固定 4 個階段:待確認、製作中、已出貨、已結案。「承辦人」把選項放在另一張工作表的儲存格範圍。「服務類別」與「服務項目」則做成兩層連動,類別分成品牌設計、網頁設計、印刷品,選好類別之後,項目欄只列出該類別底下的項目。

龐果設計訂單表的狀態、承辦人與服務類別、服務項目三組Excel下拉式選單,狀態欄展開待確認等 4 個選項
同一張訂單表裡,狀態用直接輸入、承辦人用儲存格範圍、服務類別與服務項目做成兩層連動(示意圖)。

清單來源的 3 種設定方式與維護成本

三種來源做出來的下拉選單,外觀完全一樣,差別在日後要新增或刪除選項時,得改幾個地方、改在哪裡。選錯來源,等於替未來的自己留下一堆重複工作;選對了,之後增減選項只要改一個地方。

三種做法共用同一套設定流程:

  1. 選取要放下拉選單的儲存格,或整欄要套用的範圍。
  2. 到「資料」索引標籤,按「資料工具」群組裡的「資料驗證」。
  3. 在「設定」索引標籤,把「儲存格內允許」選成「清單」。
  4. 在「來源」方塊填入清單內容,三種做法的差別就在這一步。
  5. 勾選「忽略空白」與「儲存格內的下拉式清單」。
  6. 按「確定」。

兩個核取方塊各管不同的事。「儲存格內的下拉式清單」沒勾,儲存格旁就不會出現下拉箭頭,規則雖然還在,卻看不到選單;「忽略空白」則決定這一格可不可以留空,與清單裡有沒有空白選項是兩回事。

三種來源在維護上的差別,先用一張表看清楚:

來源做法適合的情況新增一個選項時要做的事
直接輸入選項很少、幾乎不會變動回到「資料驗證」對話方塊,修改來源方塊裡的文字
儲存格範圍選項較多,想集中放在一張參數表在範圍末端輸入新項目,再回到資料驗證重新框選範圍
表格欄位選項常常增減在表格最下方輸入新項目,下拉選單自動更新

不論選哪一種,清單項目最好先排好順序再設定,下拉出來才會照這個順序呈現。清單如果放在另一張工作表,又不想讓填表的人看到或改動,可以考慮把那張工作表隱藏並保護起來。

直接輸入、儲存格範圍與表格欄位三種清單來源,新增選項時分別要改來源文字、重新框選範圍或只在表格底部輸入
三種來源做出的下拉選單外觀相同,選項常增減時用表格欄位當來源,新增項目後清單會自動更新。

直接在來源方塊輸入以逗號分隔的項目

這是最快的做法,適合選項很少、幾乎不會變動的欄位,像訂單的「狀態」只有 4 個階段。在「來源」方塊直接打 待確認,製作中,已出貨,已結案,逗號要用半形,項目之間不加空格;Microsoft 的範例 是,否,可能 也是同樣的寫法。確定之後,選取該格就能從這 4 個階段挑一個。

取捨在於修改。選項要增減,就得回到資料驗證對話方塊改來源,而且同一條規則套在很多格時,還要確認每一格的設定一致。選項偏多或常常變動時,來源方塊裡那一長串文字也會變得難讀,這時改成下一種儲存格範圍的做法比較合適。另外,網頁版能編輯的來源只有手動輸入這一種,所以選項固定、又要在網頁版維護的欄位,這個做法最省事。

選項寫在儲存格,來源指向該範圍

選項比較多,或想把所有選項集中在一張「參數」工作表管理時,就用這種做法。以承辦人清單為例,在「參數」工作表的 A2:A5 逐列輸入承辦人名單(例如王小明),標題列留在 A1,但不框進來源範圍,因為標題不該變成可以選的項目;接著回到訂單表,選取「承辦人」欄,在「來源」方塊用滑鼠框選 A2:A5 即可。

有兩個地方容易出錯。第一,範圍不要多框到下方的空白格,不然清單尾端會多出一個空白選項。第二,之後在範圍末端新增承辦人,原本的來源範圍不會自己變長,必須回到有下拉的儲存格,重新開啟「資料驗證」的「設定」索引標籤,把含全部項目的儲存格重新框選一次。

這種做法的另一個好處,是清單和填表區彼此分開,參數工作表可以隱藏或保護,填表的人只會看到下拉箭頭,不會誤改選項。要連「重新框選」這個步驟也省掉,就得靠表格。

表格欄位當來源,新增項目後清單自動更新

清單會常常增減時,Microsoft 建議把選項放進 Excel 表格。做法是選取清單範圍裡的任一個儲存格,按 Ctrl+T,在對話方塊勾選「我的表格有標題」,把清單轉成表格;再把下拉的來源指向這個表格的欄位範圍。

好處體現在之後的維護。Microsoft 說明,選項放在表格裡時,新增或移除項目,以該表格為來源的下拉式清單會自動更新,不必再做其他事。新增項目時,移到清單結尾直接輸入新項目即可;要移除項目,選取後按 Delete,若項目位在中間,則在儲存格上按右鍵選「刪除」。自動更新有一個前提,就是來源本身必須是那個表格欄位;如果來源是另外框選的一般範圍,清單就不會跟著變長。

另外有一個選用的小技巧。資料驗證的來源方塊不接受直接輸入結構化參照,也就是 Table1[承辦人] 這種寫法。想讓來源方塊讀得懂,可以先到「公式」→「名稱管理員」,用結構化參照定義一個具名範圍,再把這個具名範圍填進來源。這只是想把來源管得更整齊時的做法,不是必要步驟。

輸入訊息提示填法,錯誤警示擋下或放行清單外內容

下拉選單做好之後,「資料驗證」對話方塊的另外兩個索引標籤,決定了填表時的體驗。「輸入訊息」負責在選取儲存格時,浮出一小段填寫提示;「錯誤警示」負責在有人打了清單以外的內容時,決定要擋下、警告,還是只提醒一下。

這兩項都是選用設定,不設也能正常使用下拉選單。不過訂單表如果會讓好幾個人共用,有提示的欄位,填表的人不必猜該填什麼;有錯誤警示的欄位,打錯字時也能當場發現。

輸入訊息在選取儲存格時顯示

在「輸入訊息」索引標籤勾選「選取儲存格時顯示輸入訊息」,再填「標題」與「輸入訊息」。以「狀態」欄為例,標題可以寫「訂單狀態」,訊息寫「請從清單選擇目前進度」。Microsoft 的說明寫明,標題和訊息最多可輸入 225 個字元;Excel 網頁版的對應核取方塊叫「顯示訊息」。

訊息會顯示在儲存格旁邊,持續到使用者移到別的儲存格或按 Esc 為止,位置也能視需要拖動。使用者熟悉流程之後,如果覺得提示礙眼,可以取消勾選。比較實用的寫法,是把清單內容直接寫進訊息,例如「待確認、製作中、已出貨、已結案」,讓人不必點開下拉,就知道有哪些選項可選。

停止、警告與資訊 3 種錯誤警示樣式

在「錯誤警示」索引標籤勾選「輸入的資料不正確時顯示錯誤提醒」後,從「樣式」挑一種:

停止:直接擋下,只能選擇重試或取消,清單以外的內容輸不進去。

警告:提醒資料無效,但不阻止輸入,使用者可以按「是」接受、按「否」回去修改,或按「取消」移除這筆輸入。

資訊:通知資料無效,使用者可以按「確定」接受無效值,或按「取消」拒絕,是三種樣式裡最有彈性的一種。

Microsoft 的說明也是這樣區分的:「資訊」與「警告」會顯示提醒,但仍然允許輸入清單以外的內容,「停止」則會阻止。訂單表的「狀態」欄建議用「停止」,避免有人自創新項目,後面的統計又被拆開;像「備註類別」這種允許補充新項目的欄位,則適合用警告或資訊。

沒有填標題與訊息時,Excel 會套用預設值,標題是「Microsoft Excel」,訊息是「您所輸入的值不正確。您必須在此儲存格內輸入符合資料驗證準則的資料。」這句預設訊息沒有說出有哪些選項可選,所以自訂訊息時,要把可選項目寫出來,例如標題寫「狀態不在清單內」,訊息寫「請從待確認、製作中、已出貨、已結案擇一」。網頁版的核取方塊叫「顯示提醒」,樣式欄位則叫「類型」。

資料驗證只檢查手動輸入,複製貼上與填滿不受限

清單做好之後仍然會被繞過,原因在於資料驗證只檢查直接打字的輸入。Microsoft 的說明寫明,資料驗證是專為「直接在儲存格輸入資料」時顯示訊息、防止無效輸入而設計的。如果資料是以複製或填滿的方式放進去,或是公式算出無效的結果,或是巨集寫入了無效的資料,驗證訊息都不會出現,無效的資料仍然進得來。

以訂單表來說,有人把另一份報表的「狀態」整欄複製過來貼上,下拉的規則可能被覆蓋,貼進來的文字也不會被檢查。這個缺口沒有一個設定能完全封死,只能靠貼上方式、事後檢查與限制拖放三方面,把繞過的機會壓低。

一般貼上會覆蓋驗證規則,只貼值才能保留

Ctrl+V 的預設行為,是把來源儲存格的所有內容一併貼到目的格,包括資料、格式設定、公式、驗證與註解。也就是說,從別的檔案複製一欄「狀態」,貼到有下拉的欄位時,來源格通常沒有任何驗證規則,目的格原本的下拉規則就被取代掉,箭頭消失,貼進來的文字也不會被檢查。

補救的做法是改用「選擇性貼上」,只貼「值」,目的格原有的驗證規則就會留著。反過來,想把某一格的下拉規則複製到別的儲存格,同樣用「選擇性貼上」,選「驗證」,就會把來源格的資料驗證規則貼到選取的範圍。

要留意的是,就算只貼值,貼進來的內容仍然不會經過檢查,與清單不符的文字照樣進得來,所以事後還得用「圈出無效的資料」把它們找出來。

一般貼上會連驗證一起蓋掉下拉規則,選擇性貼上只貼值則保留規則,不符清單的值再用圈出無效的資料找出來
一般貼上會把來源格的驗證一起帶過來、取代原本的下拉規則,只貼值才留得住規則,但貼進來的內容仍要事後圈出檢查(示意圖)。

用圈出無效的資料找出不符清單的儲存格

資料驗證可以套在已經有資料的儲存格上,但 Excel 不會主動通知現有資料有沒有不符合。事後檢查的工具在「資料」索引標籤的「資料工具」群組,按「資料驗證」旁邊的箭頭,選「圈出無效的資料」,不符合規則的儲存格就會被紅色圓圈圈起來。

被圈出來的範圍,包含所有不符資料驗證準則的儲存格,不論是鍵入、複製、填入的值,還是公式算出或巨集輸入的值。把格子改成有效值,圓圈會自動消失,也可以用同一個箭頭裡的「清除驗證圓圈」一次隱藏。這個功能電腦版才有,網頁版可能看不到。

修改清單來源之後也用得到這個功能,已經不在新清單裡的舊資料可以一次圈出來,比逐格比對快得多。

關閉填滿控點與保護工作表降低繞過風險

想連拖曳複製也擋掉,Microsoft 的做法是到「檔案」→「選項」→「進階」→「編輯選項」,清除「啟用填滿控點和儲存格拖放」核取方塊,然後保護工作表。這樣一來,使用者就不能靠拖曳儲存格來複製或填滿資料。

保護工作表有順序要注意。Microsoft 提醒,要先把所有資料驗證設定好,再進行保護;保護之前,也要確認需要輸入的儲存格已經解除鎖定(在儲存格格式的「保護」索引標籤取消「鎖定」),否則使用者之後連資料都輸入不了。另外要注意,這個設定只處理拖放與填滿,Ctrl+V 貼上不在它的管轄範圍內,貼上的問題仍要靠「選擇性貼上只貼值」與「圈出無效的資料」處理。

兩層連動選單靠具名範圍加 INDIRECT 完成

常見的進階需求,是選了「服務類別」之後,下一格的「服務項目」只出現該類別的項目。原理不複雜,每個類別對應一個同名的具名範圍,第二層的來源再用 INDIRECT 把第一層儲存格裡的文字,轉成範圍參照。

依照 Microsoft 的說明,INDIRECT 的作用是傳回文字串所指定的參照,而且會立刻計算並顯示其內容;它通常用在想變更公式中的儲存格參照、卻不想改動公式本身的時候。語法是 INDIRECT(ref_text, [a1]),其中 ref_text 可以是 A1 樣式參照、R1C1 樣式參照、定義為參照的名稱,或內容是文字字串的儲存格參照;ref_text 不是有效的參照時,會傳回 #REF! 錯誤。放到訂單表來看,為了讓公式好讀,這段的範例把「服務類別」放在 B 欄、「服務項目」放在 C 欄。B2 裡的文字是「網頁設計」,INDIRECT 就會去找名稱叫「網頁設計」的範圍,C2 的下拉選單於是只列出該範圍的項目。

整個機制只靠一件事,就是第一層選到的文字,必須和某個名稱逐字相同。示範用的類別與項目如下,都是示範用的虛構項目:品牌設計底下有 Logo 設計、CIS 企業識別、名片設計;網頁設計底下有形象網站、電商網站;印刷品底下有型錄、包裝、海報。

兩層連動的Excel下拉式選單:參數表標題列當第一層,每個類別建立同名具名範圍,第二層用INDIRECT讀第一層文字
第一層選到「網頁設計」,INDIRECT 就去找同名的具名範圍,第二層只列出形象網站與電商網站(示意圖)。

資料排成一欄一個類別,標題列即第一層選項

版面的約定很簡單,同一類別的項目放在同一欄,欄標題寫類別名稱,標題列剛好就是第一層下拉的來源,一份資料同時有兩種用途。範例放在「參數」工作表,A1:C1 依序是品牌設計、網頁設計、印刷品,各欄標題下方往下放項目:

ABC
品牌設計網頁設計印刷品
Logo 設計形象網站型錄
CIS 企業識別電商網站包裝
名片設計(空白)海報

清單來源可以是單一欄或單一列,所以橫向的標題列拿來當第一層來源沒有問題,下拉出來仍是直式顯示。要留意的是各欄的項目數不同,網頁設計只有 2 項,B4 是空白的,命名之後要特別留意這類空白格。

步驟一,替每個類別建立同名的具名範圍

選取含標題列的整塊範圍(A1:C4),到「公式」索引標籤,在「已定義之名稱」群組按「從選取範圍建立」,在「從選取範圍建立名稱」對話方塊勾選「頂端列」後確定。Excel 會把每一欄的標題當成名稱,名稱參照的是該欄標題下方的儲存格,標題本身不包含在內。

命名完到「公式」→「名稱管理員」核對,確認三個名稱都在。這些名稱預設使用絕對儲存格參照,不需要另外處理。

各欄長短不一時,還要在名稱管理員多看一眼範圍。逐一點選每個名稱,看「參照到」的範圍是否只涵蓋該欄實際有項目的儲存格;短的那一欄若連尾端的空白格也算了進去,第二層下拉的尾端就會多出空白選項。想從一開始就避開這個狀況,可以讓每欄的項目數一致;也可以改成逐欄命名,每次只選取該欄實際有項目的儲存格,在資料編輯列左端的「名稱方塊」輸入類別名稱,再按 Enter。

步驟二,第一層來源指向類別標題列

先選取第一層要套用的範圍,也就是「服務類別」欄(例如 B2:B100),一次選好整段再設定,之後新增訂單就不必再設一次。開啟「資料驗證」,「允許」選「清單」,「來源」框選參數工作表的類別標題列,寫成 =參數!$A$1:$C$1;也可以先替標題列另外取一個名稱,再把那個名稱填進來源。

這一步和單層清單的做法完全相同。確定之後,點選 B 欄的任一格,下拉會出現三個類別:品牌設計、網頁設計、印刷品。

步驟三,第二層來源填入 INDIRECT 公式

選取第二層的範圍,也就是「服務項目」欄(例如 C2:C100),開啟「資料驗證」,「允許」選「清單」,「來源」填入 =INDIRECT($B2)。意思是把 B2 裡的文字(例如「網頁設計」)當成名稱,傳回該名稱代表的範圍,所以 C2 只會列出網頁設計的項目。

有三個細節會決定成敗。第一,公式裡的 B2 要對應選取範圍的第一格,選取範圍從 C2 開始,公式就寫 B2,並在欄字母前加 $ 鎖住欄、不鎖列,這樣往下的每一列才會各自對應自己那一列的第一層。第二,設定之前,先在 B2 選好一個類別,這樣設定當下公式才有東西可以解析;B2 如果還是空的,Excel 可能跳出訊息,提醒來源有問題。第三,名稱不分大小寫,Microsoft 的說明寫明 Excel 不區分名稱中的大小寫,所以第一層的文字大小寫不同也找得到。

第一層留空的列,第二層就出不來清單,因為 INDIRECT 找不到任何名稱。這是正常現象,不是設定壞掉,選好類別之後,項目就會跟著出現。

類別文字不符名稱規則時連動就會失效

連動失靈時,很常見的一個原因是第一層的選項文字不是合法的名稱。Microsoft 的說明列出的名稱規則如下:

  • 第一個字元必須是字母、底線(_)或反斜線(\)。
  • 其餘字元可以是字母、數字、句點與底線。
  • 名稱不能包含空格,字詞之間可用底線或句點分隔。
  • 名稱不能和儲存格參照相同,例如 Z$100 或 R1C1。
  • 單獨的 C、c、R、r 不能當名稱。
  • 名稱最長 255 個字元,而且不分大小寫。

中文字也能用在名稱裡,所以「品牌設計」「網頁設計」這類純中文的名稱可以直接用,Microsoft 繁體中文說明頁的範例,也用了「第一季銷售」「庫存量」這樣的中文名稱。

用這套規則回頭看,下面三種類別文字都建不成名稱:「2025 報價」以數字開頭又含空格,「Logo 設計」含空格,「印刷&加工」含「&」符號。對策是把類別文字改成不以數字開頭、不含空格與符號的寫法,例如「報價2025」「印刷加工」。實在想保留空格,可以在公式裡把空格換成底線:

=INDIRECT(SUBSTITUTE($B2," ","_"))Code language: plaintext (plaintext)

這時名稱本身要用底線建立(Logo_設計),第一層的選項則仍然顯示 Logo 設計。

連動出問題時,先到「名稱管理員」確認名稱存在,再逐字對照第一層的選項與名稱,包括有沒有多打空格、全形與半形是否一致。

第一層改選後,第二層的舊內容不會自動清除

連動選單最常被忽略的後遺症,出現在改選第一層之後。先選「品牌設計」搭配「名片設計」,再把第一層改成「網頁設計」,第二層仍然留著「名片設計」。原因和前面提過的一樣,資料驗證只在手動輸入時檢查,不會因為清單換了,就回頭去清掉已經填好的舊值。

處理方式是改選第一層之後,記得重選第二層。想找出已經對不上的列,可以用「圈出無效的資料」,被圈出來的第二層儲存格,就是需要重選的。至於改選第一層就自動清空第二層,得另外寫巨集才做得到。

清單內容的修改要依來源類型處理

清單做好之後,最常遇到的需求是多一個選項,或拿掉一個選項。處理方式取決於當初來源怎麼建的,所以動手之前,得先判斷來源屬於哪一種類型。接手別人做的檔案時,這個判斷尤其用得到。

Microsoft 把常見的建法分成 4 種:逗號分隔清單、儲存格範圍、具名範圍與表格欄。每一種的修改位置都不一樣,改錯地方的話,儲存格裡的文字改了,下拉選單卻沒有跟著變。

先從來源方塊判斷清單的來源類型

判斷的動作只有三步:選取一個有下拉的儲存格,到「資料」索引標籤的「資料工具」群組按「資料驗證」,再看「設定」索引標籤裡的「來源」欄位。

從外觀就能分辨:

  • 看到用逗號隔開的文字,例如 待確認,製作中,已出貨,已結案,是手動輸入。
  • 看到 =$A$2:$A$9 這類範圍,是儲存格範圍。
  • 看到 =名稱 這類寫法,是具名範圍。
  • 範圍落在表格的欄位裡,就是表格。

這個判斷也關係到能不能在網頁版修改,網頁版只能編輯來源為手動輸入的下拉式清單,來源是具名範圍時,要回到電腦版處理。

4 種來源各自的修改位置,具名範圍在名稱管理員

四種來源的改法各不相同:

表格:到清單結尾輸入新項目,要移除就選取後按 Delete,項目在中間則按右鍵選「刪除」,下拉選單會自動更新。

儲存格範圍:到來源工作表,在範圍末端輸入新項目或刪掉項目;如果範圍長度變了,要回到有下拉的儲存格,開啟「資料驗證」的「設定」索引標籤,重新框選含全部項目的儲存格。

具名範圍:先在來源工作表改清單內容,再到「公式」→「名稱管理員」,選取該名稱,清除「參照到」方塊裡的原參照,改在工作表上選取含全部項目的儲存格,按「關閉」,再按「是」儲存。

手動輸入:直接在「來源」方塊增刪項目,維持半形逗號分隔,項目之間不加空格。

最容易弄錯的是具名範圍。資料驗證的來源方塊裡只看得到名稱、看不到範圍本身,真正的修改位置在名稱管理員,只在資料驗證對話方塊裡打轉,清單怎麼改都不會有變化。

從資料驗證的來源欄位判斷手動輸入、儲存格範圍、具名範圍或表格,再到各自的位置修改清單內容
具名範圍的來源方塊只顯示名稱,真正要改的是名稱管理員裡的「參照到」,在資料驗證對話方塊裡改不動清單。

清單變更後套用到所有相同設定的儲存格

同一條規則套在很多格時,例如整個「狀態」欄,改清單的時候得勾選「設定」索引標籤裡的「將所做的改變套用至所有具有相同設定的儲存格」,所有相同設定的儲存格才會一次更新。沒有勾的話,只有選取的那一格會變,其他格還是舊清單,日後就會出現同一欄兩套選項的狀況。

改完清單也要檢查儲存格夠不夠寬。下拉清單的寬度跟著含有資料驗證的儲存格走,新增的項目如果比較長,可能被截斷,必要時加寬欄寬,避免有效的輸入看起來被切掉。

移除下拉選單,已填入的內容仍會保留

移除下拉選單,只是拿掉驗證規則,儲存格裡已經選好的值並不會被清掉,只是該格從此可以自由輸入。所以動手之前,先分清楚是要連規則一起移除,還是只想換清單內容;後者不必移除,依來源類型直接修改就好。

接手別人做的檔案時,往往連哪些格子設過驗證都不確定,這時要先找出來,才好處理。

以全部清除移除選取儲存格的驗證

先選取有下拉的儲存格;如果是不相鄰的多個儲存格,按住 Ctrl 逐一點選。接著到「資料」索引標籤,按「資料驗證」,在「設定」索引標籤按「全部清除」,再按「確定」。

下拉箭頭會消失,已經填入的文字仍在,但這一格不再有任何輸入限制。要留意的是,這個步驟清掉的只有驗證規則;選取儲存格後按 Delete,清掉的才是格子裡的內容,兩者不要弄混,否則會把已經填好的訂單狀態一起刪掉。

多個儲存格一起移除時,先把它們全部選取,再執行一次「全部清除」即可,不必逐格處理。如果「資料驗證」按鈕呈灰色,多半是工作表受保護或活頁簿正在共用,得先解除才能移除。

以尋找與選取找出整張工作表的資料驗證

不知道哪些格子設過驗證時,先到「常用」索引標籤的「編輯」群組,按「尋找與選取」,再點「資料驗證」。Excel 會把工作表上所有設過資料驗證的儲存格一次選起來,之後可以變更、複製或移除驗證設定。

這一招對接手別人的檔案特別有用。選取結果會直接標出有哪些欄位設了下拉,接著只要逐欄開啟「資料驗證」,看「來源」欄位是哪一種寫法,就能判斷該用哪種方式維護,也能避免漏掉某個藏在角落、早就沒人記得的欄位。

如果是從某個已經有下拉的儲存格出發,只想選與它設定相同的格子,可以按 Ctrl+G,在跳出的對話方塊按「特殊」,再到「資料驗證」底下選「全部」或「相同」。前者會找出所有設了驗證的格子,後者只找與目前這一格設定一樣的格子。

下拉選單失靈的常見症狀與原因

excel下拉選單出狀況時,症狀通常就那幾種:按鈕按不了、箭頭沒出現、選項顯示不全,或是連動的第二層一片空白。每一種都能回到某個設定找到原因,不需要把整套選單重做。

Excel下拉式選單失靈時,按鈕灰色、箭頭消失、選項截斷、空白選項與連動第二層空白各自對應的原因與處理方式
下拉選單失靈多半能回到某個設定找到原因,例如箭頭消失常是核取方塊被取消,或規則被貼上覆蓋。

資料驗證按鈕呈灰色,多半是工作表受保護或活頁簿共用

資料驗證命令無法使用,多半是因為工作表受保護,或活頁簿正在共用。必須先取消保護或停止共用,才能變更驗證設定。另一個少見的原因是儲存格正處於輸入狀態,這時資料驗證命令也無法使用,按 Enter 或 Esc 結束輸入即可。

要確認工作表是否受保護,可以看「校閱」索引標籤,如果上面顯示的是「取消保護工作表」,就表示目前正受到保護。

如果拿到的是別人的檔案,又不知道保護密碼,Microsoft 建議先聯絡原本的擁有者,因為 Excel 無法復原未知或遺失的密碼。變通的做法是把資料複製到另一張工作表,再從那裡移除資料驗證。

儲存格旁邊沒有出現下拉箭頭

規則還在、箭頭卻沒出現,多半是「儲存格內的下拉式清單」核取方塊被取消了。回到「資料驗證」的「設定」索引標籤,把它勾選回來即可。

另外,箭頭通常要選取該儲存格才會出現,沒選到時看不到,屬於正常情況。

如果選取後仍然沒有箭頭,也沒有任何限制輸入的效果,就要懷疑規則已經不在了,最常見的原因,是有人用 Ctrl+V 把別處的內容貼了進來,連驗證一起被覆蓋。這時可以用「尋找與選取」的「資料驗證」確認這一格還有沒有規則,沒有的話,重新設定一次即可。

長選項被截斷與清單尾端的空白選項

這兩個都屬於外觀問題。選項被截斷,是因為下拉清單的寬度跟著儲存格的寬度走,儲存格太窄,長一點的選項就顯示不全,把欄寬加寬就好。如果不想動表格的版面,也可以改成縮短選項文字,例如把冗長的說明移到輸入訊息裡,選項本身只留簡短的關鍵詞。

清單尾端多出空白選項,多半是來源範圍多框到了下方的空白格,重新框選到最後一個項目即可。這裡很容易誤會「忽略空白」,它控制的是儲存格可不可以留空,與清單裡有沒有空白選項是兩件事,勾或不勾都不會讓空白選項消失。

連動選單的第二層沒有選項或出現錯誤

第二層沒有選項時,照下面的順序逐項核對,通常很快就能找到出錯的地方:

  1. 第一層有沒有先選。第二層的來源依賴第一層的文字,沒選就沒有清單。
  2. 第一層的選項文字,是否與名稱逐字一致,包括有沒有多打空格、全形與半形是否相同。
  3. 類別文字是否符合名稱規則,以數字開頭、含空格或含「&」這類符號的文字,都無法建成名稱。
  4. 名稱是否存在,到「公式」→「名稱管理員」確認。
  5. 第二層的公式是否為 =INDIRECT($B2),而且 B 欄指到的確實是第一層。

INDIRECT 的參照無效時,會傳回 #REF! 錯誤,第二層出現錯誤訊息,多半就是上面某一項沒對上。

選單做好、規則設定到位,剩下的就是讓它真的被用起來。建議先從最常被打錯的「狀態」欄開始,用表格當來源、錯誤警示選「停止」,把這一欄做成整張訂單表的樣板,再把同樣的做法複製到其他欄位。excel下拉式選單的價值,要等到幾個月後報表一次就加總到位,才會真正顯現出來。

常見問答

本區問答由 AI 依文章內容自動整理,僅供快速參考,正式內容仍以全文為準。

Excel下拉式選單要從哪裡設定?

Excel下拉式選單是資料驗證裡的清單規則,電腦版在「資料」索引標籤的「資料工具」群組按「資料驗證」,把「儲存格內允許」選成「清單」,再在「來源」填入選項。Mac 版同樣在「資料」索引標籤,位於「工具」底下。

Excel下拉式選單的清單來源該選哪一種?

Excel下拉式選單的選項少又幾乎不變,直接在來源方塊輸入半形逗號分隔的項目最快;選項較多想集中管理,用儲存格範圍;選項常常增減,就放進 Excel 表格當來源,新增項目後清單會自動更新。

Excel下拉式選單為什麼貼上資料後就消失?

Excel下拉式選單遇到一般的 Ctrl+V,會把來源格的資料、格式與驗證一併貼過來,來源格沒有規則,目的格的下拉規則就被取代。改用「選擇性貼上」只貼「值」才能保留規則,但貼進來的內容仍不會被檢查。

Excel下拉式選單怎麼找出不符清單的資料?

Excel下拉式選單可以搭配「資料驗證」旁箭頭裡的「圈出無效的資料」,把不符規則的儲存格用紅色圓圈標出來,不論是鍵入、複製或公式算出的值都算。改成有效值後圓圈會自動消失。這個功能適用於電腦版,Excel 網頁版可能看不到。

Excel下拉式選單能擋下清單以外的內容嗎?

Excel下拉式選單能擋,在「錯誤警示」索引標籤把樣式選成「停止」,清單以外的內容就輸不進去。「警告」與「資訊」只會跳出提醒,仍允許輸入,適合允許補充新項目的欄位。

Excel下拉式選單怎麼建立兩層連動?

Excel下拉式選單的兩層連動,是先替每個類別建立同名的具名範圍,第一層來源指向類別標題列,第二層來源填入 =INDIRECT($B2),讓第二層把第一層選到的文字當成名稱,只列出該類別底下的項目。

Excel下拉式選單的連動第二層為什麼沒有選項?

Excel下拉式選單的第二層沒有選項,常見原因是第一層還沒選,或第一層文字和名稱不完全一致,例如多打空格、全形半形不同;類別文字以數字開頭、含空格或「&」也建不成名稱。

Excel下拉式選單要新增選項該改哪裡?

Excel下拉式選單新增選項的位置看來源類型:表格在清單結尾輸入就會自動更新;儲存格範圍要在末端輸入後重新框選;具名範圍要到名稱管理員改「參照到」;手動輸入則直接改來源方塊。

Excel下拉式選單移除後已填的內容會不見嗎?

Excel下拉式選單移除後,已填入的內容不會不見。在資料驗證的「設定」索引標籤按「全部清除」,拿掉的只有驗證規則,文字仍會保留,只是該格從此可以自由輸入;按 Delete 清掉的才是格子內容。

Excel下拉式選單的資料驗證按鈕為什麼是灰色?

Excel下拉式選單的資料驗證按鈕呈灰色,多半是工作表受保護或活頁簿正在共用,要先取消保護或停止共用才能變更設定。儲存格正處於輸入狀態時也無法使用,按 Enter 或 Esc 結束輸入即可。

資料來源
  1. 建立下拉式清單 — Microsoft
  2. 公式中的名稱 — Microsoft
  3. 顯示或隱藏無效資料周圍的圓圈 — Microsoft
  4. 有關資料驗證的詳細資訊 — Microsoft
  5. 新增或移除下拉式清單中的項目 — Microsoft
  6. INDIRECT 函數 — Microsoft