<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      wps實現多選下拉框3種方案

      一、js宏listbox控件方案

      優點:

      1.wps默認宏環境,無需安裝VBA環境

      2.下拉框位置定位準確

      缺點:

      1.下拉框數據無法代碼初始化,只能使用區域設置

      2.一次只能選一個,多次選擇實現多選

      操作步驟:

      1.工具->開發工具->拖動一個列表框到工作表

      2.雙擊控件 或 查看代碼,進入代碼編輯

      3.代碼編輯的時候頭上可以選擇不同的事件進行監聽處理

      4. 右擊控件可以進行屬性設置

      配置:

       

       

      代碼:

      function ListBox1_Click()
      {
           var cellValue = new String(ActiveCell.Value2);
           var listVal = ListBox1.Value;
           if(cellValue=="undefined"){
               ActiveCell.Value2=listVal;
           }else{
               if(!cellValue.includes(listVal)){
                   ActiveCell.Value2=cellValue+","+listVal;
               }else{
                   ActiveCell.Value2= removeCharFromList(cellValue,listVal);
               }
           }
       }
       
       // 刪除字符串中的某個子串
      function removeCharFromList(str, charToRemove) {
          return str.split(',').filter(char => char !== charToRemove).join(',');
      }
      
      function Workbook_SheetSelectionChange(Sh, Target)
      {
          if(ActiveCell.Column==2 && ActiveCell.Row>1){
              ListBox1.Top=ActiveCell.Top+ActiveCell.Height;
              ListBox1.Left=ActiveCell.Left+ActiveCell.Width;
              ListBox1.Width=ActiveCell.Width;
              ListBox1.Visible=true;
          }else{
              ListBox1.Visible=false;
          }
      }

       效果:

       

       

      二、js宏listbox+form窗體方案

      優點:

      1.wps默認宏環境,無需安裝VBA環境

      2.下拉框數據可以代碼初始化,無需區域設置

      缺點:

      1.下拉框位置無法精準定位

      2.一次只能選一個,多次選擇實現多選

      操作步驟:

      1.工具->開發工具->WPS宏編輯器 或者 查看代碼,進入代碼編輯

      2. 新增窗體UserForm1,并拖動一個ListBox到form中

      3. 代碼編輯的時候頭上可以選擇不同的事件進行監聽處理

      配置:

       

      代碼:

      //窗體初始化
      function UserForm1_Initialize()
      {
          //下拉框初始化選項
          var items = ["東", "南", "西", "北"];
          for (var i = 0; i < items.length; i++) {
              UserForm1.ListBox1.AddItem(items[i],i);
          }
      }
      
      //選區改變事件
      function Workbook_SheetSelectionChange(Sh, Target)
      {
          if(ActiveCell.Column==2 && ActiveCell.Row>1){
              //顯示窗體
              UserForm1.Show();    
          }else{
              //隱藏窗體
              UserForm1.Hide();
          }
      }
      
      //下拉框點擊事件
      function UserForm1_ListBox1_Click()
      {
          //獲取單元格的值
          var cellVal = new String(ActiveCell.Value2);
          //獲取下拉框選中的值
          var listBoxVal = UserForm1.ListBox1.Value;
          if(cellVal=="undefined"){
              //第一次選中
              ActiveCell.Value2 = listBoxVal;
          }else{
              if(!cellVal.includes(listBoxVal)){
                  //添加選項
                  ActiveCell.Value2 = cellVal+","+listBoxVal;
              }else{
                  //刪除選項
                  ActiveCell.Value2 = removeCharFromList(cellVal,listBoxVal);
              }
          }
           UserForm1.Hide();
           //選擇其它單元格,模擬失焦
           var adderss = "C"+ActiveCell.Row;
          ActiveSheet.Range(adderss).Select(); 
      }
      
      // 刪除字符串中的某個子串
      function removeCharFromList(str, charToRemove) {
          return str.split(',').filter(char => char !== charToRemove).join(',');
      }

       效果:

       

       

      三、vb宏listbox方案

      優點:

      1.支持多選,一次選多個

      2.下拉框位置定位準確

      缺點:

      1.需要安裝VBA環境

      步驟:

      1.工具->開發工具-> VB編輯器 或 查看代碼,進入代碼編輯

      2.代碼編輯的時候頭上可以選擇不同的事件進行監聽處理

      3. 右擊控件可以進行屬性設置

      配置:

       

      代碼:

      Private Sub ListBox1_Change()
      
      If Reload Then Exit Sub 'ListBox1改變事件
      
      For i = 0 To ListBox1.ListCount - 1
      If ListBox1.Selected(i) = True Then t = t & "," & ListBox1.List(i)
      Next
      
      ActiveCell = Mid(t, 2)
      
      End Sub
      
      Private Sub Worksheet_SelectionChange(ByVal Target As Range)
          With ListBox1
              '第 2 列 且 單元格大于 1,因為表頭的字段不需要進行多選
              If ActiveCell.Column = 2 And ActiveCell.Row > 1 Then
                  t = ActiveCell.Value
                  
                  Reload = True '如果是根據單元格的值修改列表框,則暫時屏蔽listbox的change事件。
                  
                  For i = 0 To .ListCount - 1 '根據活動單元格內容修改列表框中被選中的內容
                      If InStr(t, .List(i)) Then
                          .Selected(i) = True
                      Else
                          .Selected(i) = False
                      End If
                  Next
                  
                  Reload = False
                  
                  .Top = ActiveCell.Top + ActiveCell.Height '以下語句根據活動單元格位置顯示列表框
                  .Left = ActiveCell.Left
                  .Width = ActiveCell.Width
                  .Visible = True
              Else
                  .Visible = False
              End If
          End With
      End Sub

       效果:

       

      posted @ 2025-03-18 18:25  追極  閱讀(5169)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 日韩有码中文在线观看| 南召县| 天堂av资源在线免费| 2020国产成人精品视频| 加勒比中文字幕无码一区| 亚洲综合色成在线播放| 亚洲av无码一区二区三区网站| 国产色视频一区二区三区| 亚洲精品国自产拍影院| 18禁裸乳无遮挡自慰免费动漫| 午夜夜福利一区二区三区| 亚洲综合高清一区二区三区| 国产精品免费观在线| 天堂V亚洲国产V第一次| 18禁精品一区二区三区| 国产高在线精品亚洲三区| 亚洲成av人片无码迅雷下载| 亚洲精品动漫免费二区| 婷婷丁香五月深爱憿情网| 亚洲成人精品综合在线| 青草青草视频2免费观看| 自拍亚洲综合在线精品| 午夜av福利一区二区三区| 亚洲精品国产综合久久一线| 海阳市| 不卡在线一区二区三区视频| 欧美激情一区二区三区成人| 老鸭窝在线视频| 韩国午夜理伦三级| 四虎女优在线视频免费看| 伊人久久综合无码成人网| 国产精品成人久久电影| 国产婷婷综合在线视频中文| AV老司机色爱区综合| 人妻熟女一区二区aⅴ向井蓝| 亚洲精国产一区二区三区| 艳妇乳肉豪妇荡乳在线观看| 亚洲国产精品人人做人人爱| 亚洲欧美日韩国产精品一区二区| 亚洲av免费看一区二区| 亚洲人妻一区二区精品|