案例:假設有兩個小組,每個小組各有6個人,這兩個小組的名單位於兩個單獨的列中(圖1)。我們要在這兩個小組中隨機挑出選手,需要在另一個新的列中輸入挑出的人名。我們的任務就是以這兩個小組人員的姓名為數據來源,構造一個可選的下拉菜單。我們以在WPS表格中操作來說明。
(圖1 原始數據是由各6人一組的兩個小組的人名構成)
1. 嘗試傳統有效性引用的辦法
我們首先按傳統有效性引用的思路,嘗試一次性對兩個數據列進行引用設置。
第一步:選擇輸入區域,點擊“數據”選項卡下的“有效性”按鈕(圖2)。
第二步:在“數據有效性”窗口中,設置有效性條件,“允許”條件選擇為“序列”,“來源”用鼠標框選的辦法選擇為第1列和第2列原始數據(圖3)。
第三步:點擊“確定”之後,WPS表格彈出信息,提示“列表源”必須是劃定分界後的數據列表,或是對但一行或一列的引用(圖4)。
顯然這種辦法行不通。怎麼辦?如何劃定分界?
2. 巧用“名稱管理器”突破限制
先給其中的一列原始數據定義區域代碼,然後給這個區域代碼設置有效性條件,最後通過擴大有效性條件范圍的辦法,將數據選擇范圍擴大到兩列。
第一步:從“公式”菜單下點擊“名稱管理器”,在彈出的“定義名稱”窗口中輸入一個名稱代號,如“xz”;在“引用位置”處通過鼠標框選的辦法選中第2列數據,這樣就為第2列人名定義了一個名稱“xz”。“引用位置”處的數據自動變為“=Sheet1!$B$2:$B$7”。點擊“確定”(圖5)。
第二步:選擇“數據→有效性”命令,在有效性條件的額“允許”列表中選擇“序列”,“來源”框中輸入“=xz”,實現了用定義的名稱來引用第2組數據(圖6)。
第三步:確定之後,現在從“參會挑選結果”一列下輸入,可看到第2組的人名列表並能選擇第2組的人名進行選擇輸入了(圖7)。
3. 擴大定義名稱的引用范圍
那麼,怎麼才能將第1組的人名引入到候選輸入列表中呢?我們可以通過修改引用范圍的辦法來實現。
通過“公式”菜單下的“名稱管理器”按鈕調出“名稱管理器”定義窗口,點擊此前定義的名稱“xz”,接下來把“xz”引用位置擴大到兩列數據的范圍,方法是在“引用位置”處刪除原來的引用字符串,然後用鼠標框選的辦法選擇第1組合第2組人名數據,點擊“確定”(圖8)。
之後,我們再來點擊輸入列表,發現候選人名中已經出現的是兩個小組的人名了(圖9)。
小提示:
用Excel 2013也可以實現如上功能。只是在Excel 2013中,“數據有效性”的提法對應於“數據驗證”,位於“數據”選項卡下。這一點要注意,否則若按“數據有效性”查找會無所獲。