需要使用VBA監控表格內容變化。實作方法如下:
1.先在sheet1 絕對不會使用的區域輸入兩列,分別對應「服務態度,業務能力」
將「語音語調、話外音、主動服務意識」區域命名為「服務態度」
將「需轉換、查詢錯誤」區域命名為「業務能力」
2.然後在sheet1代碼頁輸入以下代碼,作用是監控A1變化並依據變化調整B1設定。
Private Sub Worksheet_Change(ByVal Target As Range)
If Target = Range("A1") Then
Range("B1").Validation.Delete
Range("B1").Validation.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=" & Target.Text
End If
End Sub
先看一下原始數據,原始資料在一張工作表,第一行是省市名稱,下面的若干行為對應省市下面的地名和區名。需要在另外一張工作表中A列和B列建立連桿的二級下拉式選單。
2
首先,選取原始資料表的所有資料(包含多餘的空白儲存格),按F5或Ctrl G調出定位對話方塊。選擇左下角的【定位條件】。
3
如下圖,選則【常數】,並點選【確定】按鈕。這樣,所有的非空白單元格被選取。
4
選擇功能區的【資料】-【有效性】-【根據所選內容建立】。
5
由於標題在第一行,因此選擇【首行】為名稱,然後點選【確定】按鈕。
6
操作完畢後,在名稱管理器中就可以看到定義的名稱了。
7
選取第一行的省市名稱(也定位到非空白儲存格),在名稱方塊中輸入「省市」兩個字,然後按回車,這樣就定義了一個「省市」的名稱。
8
選取操作介面的A2單元格,選擇【資料】-【資料有效性】。
9
如下圖,選擇【序列】,【來源處】輸入:=省市,然後點選【確定】按鈕。
10
這樣,就在A2單元格產生了省市資訊的下拉式選單。
11
同樣的方法,選取B2單元格,設定資料有效性,輸入公式:=INDIRECT($A$2)。
12
設定完畢後,A2儲存格選擇「河北」時B2的下拉式選單返回「河北」的訊息;A2儲存格選擇「北京」時B2的下拉式選單返回「北京」的訊息。
13
注意:
上述二級下拉選單設定的公式採取了行列都絕對引用,如果要使二級下拉選單對整列均可用,將公式更改為:=INDIRECT($A2)即可。
以WPS 2019版本為例:
關於excel表格如何設定多層下拉項,在WPS「表格(Excel)」中操作方法如下:
1、首先,我們在表格將資料分別錄入Sheet2和Sheet3中,Sheet2中是一級和二級,Sheet3中是二級和三級的資料。和之前製作二級下拉選單的方式差不多,我們先進入Sheet2中,選擇所有數據,點選「公式-指定-只保留「首行」前面的勾,其他的全部取消掉。同樣的方法,我們再次進入Sheet3中進行操作;
2、設定一級下拉選單:進入Sheet1,選取A2儲存格,進入「資料-有效性-有效性-選擇序列」,在「來源」中選擇Sheet2中的「A1:C1」儲存格(就是一級下拉選單的內容);
(注意:設定完成後續先選取一個選項,否則設定二級時會提示錯誤)
3、設定二級下拉式選單。遊標定位到B2單元格,然後進入「資料-有效性-有效性-選擇序列」「來源」中輸入「=INDIRECT(A2)」確定;
4、設定三級下拉式選單。選取C2單元格,同樣的操作,只是在「來源」中輸入的是「=INDIRECT(B2)」。最後,我們選取A2:C2儲存格,向下填入一下。此時,我們的多層下拉式選單就已經全部完成。
方法/步驟
認識下拉式選單
如下圖範例,第一級下拉選單為省份,第二級則為市,第三級為縣或區。第二級下拉式選單需根據第一級選單的選擇自動選擇對應的市,同樣,第三級下拉式選單需根據第二級選單的選擇自動選擇對應的縣或區。
製作第一級下拉式選單
第一級菜單為省,也即是廣東、廣西,因此直接利用數據有效性的引用即可。
製作第二級下拉式選單
第二級菜單為市,第二級菜單需根據第一級菜單的選擇來顯示第二級的菜單內容,如第一級選擇廣東,則第二級需要選擇的菜單是“廣州、東莞、深圳.....」;
製作第三級下拉式選單
第三級選單為縣區,第三級選單需根據第二級選單的選擇來顯示第三級的選單內容,如第二級選擇廣州,則第三級需要選擇的選單是「天河區.....」;
5
移除資料有效性選單中的空格
當在定義名稱時,需選擇定義名稱的範圍,如果範圍內包含了空格,則選單中就會形成空格,最簡單的辦法,僅選擇有資料的範圍來定義名稱。
以上是如何建立excel中的級聯選單?的詳細內容。更多資訊請關注PHP中文網其他相關文章!