樓主你說的是下拉框啦。看我發的教程哦。
很多時候,我們要收集一些表格,為了資料統一性,比如說某個班級的名稱,公司專案的名稱統一一個命名,我們會給單元格加上限制,讓它只能填某幾個數值。
比如:某個公司的專案命名方式為1-a,2-b,3-c,4-d,5-e,6-f共有6個專案,為了專案填表的準確性,我們給它的專案名稱加上限制。
假設我們需要在B2單元格輸入專案名稱,這裡我們選中B2單元格,資料-有效性-選擇序列-選擇待選名稱。
當然,這個估計大家都會啦。灑灑水的事。
假設下面一個場景,某一天,領導需要你把專案的區域填上去。
假設1,3,5專案屬於廣東省,2,4專案廣西省,6專案海南省。如下圖:
如果在區域選擇對應的省份下拉框,名稱選擇省份所對應的專案下拉框。意思就是,區域,只能填這三個省。如果選擇廣東省,那麼專案名稱那裡只能選擇1,3,5專案。這個怎麼操作呢?
第一步:可以把省份的限制條件弄上。
選中B2單元格,資料-有效性-序列-選擇G1到I1單元格。
第二步,把省份對應的名稱關聯到專案名稱
從名稱管理器我們可以看出,它這是引用後面三個單元格,生成了一個數組。
至於什麼是陣列,可以看上一期的文章。
恐怖如斯的陣列,你能不會?
透過陣列,省份和專案名稱關聯到了一起。
當然,為了使得資料更加好看,我們可以修改一下廣西、海南二省兩個公司的引用位置,以使得前面的數值沒有空陣列。
改好的效果如下:
最後一步,我們需要把專案名稱那裡和省份關聯起來。
首先,選擇資料-有效性-序列。
D1單元格的資料依賴於B1,所以我們希望做到把B1單元格,根據他的數值,然後利用宏表公式,把宏表公式裡面的陣列傳遞給D1。
仔細想想,其實資料有效性裡面的序列在某種意義上來說,也是一種陣列,所以有沒有這麼一個函式,可以把函式的裡面的值所對應的值傳遞出來。
舉個例子:
利用indirect函式,成功引用到了C2單元格的值"B2",然後再把B2單元格的值“2”傳遞了過去,這樣就形成了二次傳遞。
那麼上面的那個,也同樣可以透過indirect函式傳遞B1單元格的值的值。假設B1單元格是“廣東省”,那麼“=indirect(B1)”不就相當於”=廣東省”。恰好剛剛我們又做了一個宏表公式,它的名稱就是廣東省。
這樣的話,我就得到了一個值,也就是陣列。
我在把陣列,給序列。這樣,不就完美搞定了專案名稱下拉框二級聯動的關係了嘛?
具體操作如下:
選中D1單元格,資料-有效性-序列,輸入“=indirect(B1)”
咦?居然不行。這是為啥?
這裡我們給B1隨便選一個數據,然後再去輸入一次公式。
這樣,也就完美解決了。
如果下面還要弄,直接清除B1,D1的資料,其下拉框,資料聯動性不受影響。
樓主你說的是下拉框啦。看我發的教程哦。
很多時候,我們要收集一些表格,為了資料統一性,比如說某個班級的名稱,公司專案的名稱統一一個命名,我們會給單元格加上限制,讓它只能填某幾個數值。
比如:某個公司的專案命名方式為1-a,2-b,3-c,4-d,5-e,6-f共有6個專案,為了專案填表的準確性,我們給它的專案名稱加上限制。
假設我們需要在B2單元格輸入專案名稱,這裡我們選中B2單元格,資料-有效性-選擇序列-選擇待選名稱。
當然,這個估計大家都會啦。灑灑水的事。
假設下面一個場景,某一天,領導需要你把專案的區域填上去。
假設1,3,5專案屬於廣東省,2,4專案廣西省,6專案海南省。如下圖:
如果在區域選擇對應的省份下拉框,名稱選擇省份所對應的專案下拉框。意思就是,區域,只能填這三個省。如果選擇廣東省,那麼專案名稱那裡只能選擇1,3,5專案。這個怎麼操作呢?
第一步:可以把省份的限制條件弄上。
選中B2單元格,資料-有效性-序列-選擇G1到I1單元格。
第二步,把省份對應的名稱關聯到專案名稱
從名稱管理器我們可以看出,它這是引用後面三個單元格,生成了一個數組。
至於什麼是陣列,可以看上一期的文章。
恐怖如斯的陣列,你能不會?
透過陣列,省份和專案名稱關聯到了一起。
當然,為了使得資料更加好看,我們可以修改一下廣西、海南二省兩個公司的引用位置,以使得前面的數值沒有空陣列。
改好的效果如下:
最後一步,我們需要把專案名稱那裡和省份關聯起來。
首先,選擇資料-有效性-序列。
D1單元格的資料依賴於B1,所以我們希望做到把B1單元格,根據他的數值,然後利用宏表公式,把宏表公式裡面的陣列傳遞給D1。
仔細想想,其實資料有效性裡面的序列在某種意義上來說,也是一種陣列,所以有沒有這麼一個函式,可以把函式的裡面的值所對應的值傳遞出來。
舉個例子:
利用indirect函式,成功引用到了C2單元格的值"B2",然後再把B2單元格的值“2”傳遞了過去,這樣就形成了二次傳遞。
那麼上面的那個,也同樣可以透過indirect函式傳遞B1單元格的值的值。假設B1單元格是“廣東省”,那麼“=indirect(B1)”不就相當於”=廣東省”。恰好剛剛我們又做了一個宏表公式,它的名稱就是廣東省。
這樣的話,我就得到了一個值,也就是陣列。
我在把陣列,給序列。這樣,不就完美搞定了專案名稱下拉框二級聯動的關係了嘛?
具體操作如下:
選中D1單元格,資料-有效性-序列,輸入“=indirect(B1)”
咦?居然不行。這是為啥?
這裡我們給B1隨便選一個數據,然後再去輸入一次公式。
這樣,也就完美解決了。
如果下面還要弄,直接清除B1,D1的資料,其下拉框,資料聯動性不受影響。