有網友問我說,我用offset實現了2級聯動,但是我想實現3級甚至更多級的聯動,該怎么辦,因為時間的關系,沒有及時的給予這位朋友回復,就利用這次機會,來寫一下刀豆如何來實現3級甚至更多級的聯動。
excel下拉菜單關聯——如何實現多級聯動下拉菜單效果
首先來說一下我們要實現的效果,就是我們選擇1級菜單后,2級菜單里就有對應1級菜單的內容,我們選擇2級菜單的項的時候,3級菜單會產生對應2級菜單項的內容,以此類推,來說一下我實現這種功能的原理,就是為不同的列的內容設置了名稱,而這個名稱恰好就是上一級菜單里的選擇項。這樣的情況下,在數據有效性中的函數讀取的其實是引用這個名詞所對應的區域內的內容,也就把我們下一級的菜單內容讀取出來了。
接下來,我們來準備數據,根據第一步所描述的原理,我將列名進行了顏色處理,以方便大家去理解。
從1級項到3級項,高級別項是下一級的列名,這就是我們的數據源的格式,如果有的網友問,不加這些列名可以嗎?回答是:可以的,不加列名的話,你需要知道每列對應的上一級的內容,加上只是方便查看。
接下來的一步是Office2003同2003以上版本不同的地方,創建名稱,2003需要逐一創建,而像2013可以全選以后,系統會根據選擇區域自行創建,不過逐一創建也有好處,就是我們不會出現部分值出現2次的現象。接下來,我們就逐一進行創建,首先創建“百度”的2級項內容。選中數據區域。
點擊Ctrl+F3,或者從菜單欄中選擇“插入”—“名稱”—“定義”。
需要注意的是,系統會默認所選區域的首單元格內容為當前工作薄名稱,我們需要改為上一級的名稱。這里,它的上一級是“百度”。
點擊“添加”,這樣一個工作薄的名稱就添加完成了,剩下的同理。
全部添加完成后,我們就完成了對所需要的數據區域的命名工作。
StringUtils類常用的方法講解
1.publicstaticbooleanisEmpty(Stringstr)
判斷某字符串是否為空,為空的標準是str==null或str.length()==0
下面是StringUtils判斷是否為空的示例:
StringUtils.isEmpty(null)=true
StringUtils.isEmpty(“”)=true
StringUtils.isEmpty(“”)=false//注意在StringUtils中空格作非空處理
StringUtils.isEmpty(“”)=false
StringUtils.isEmpty(“bob”)=false
StringUtils.isEmpty(“bob”)=false
2.publicstaticbooleanisNotEmpty(Stringstr)
判斷某字符串是否非空,等于!isEmpty(Stringstr)
下面是示例:
StringUtils.isNotEmpty(null)=false
StringUtils.isNotEmpty(“”)=false
StringUtils.isNotEmpty(“”)=true
StringUtils.isNotEmpty(“”)=true
StringUtils.isNotEmpty(“bob”)=true
StringUtils.isNotEmpty(“bob”)=true
3.publicstaticbooleanisBlank(Stringstr)
判斷某字符串是否為空或長度為0或由空白符(whitespace)構成
下面是示例:
StringUtils.isBlank(null)=true
StringUtils.isBlank(“”)=true
StringUtils.isBlank(“”)=true
StringUtils.isBlank(“”)=true
StringUtils.isBlank(“tnfr”)=true//對于制表符、換行符、換頁符和回車符
StringUtils.isBlank()//均識為空白符
StringUtils.isBlank(“b”)=false//”b”為單詞邊界符
StringUtils.isBlank(“bob”)=false
StringUtils.isBlank(“bob”)=false
StringUtils方法的操作對象是Java.lang.String類型的對象,是JDK提供的String類型操作方法的補充,并且是null安全的(即如果輸入參數String為null則不會拋出NullPointerException,而是做了相應處理,例如,如果輸入為null則返回也是null等,具體可以查看源代碼)。如果大家還想了解更多與之有關的信息,歡迎關注我們優詞網的官網。