首頁 >專題 >excel >excel下拉框多選打勾的設定方法

excel下拉框多選打勾的設定方法

藏色散人
藏色散人原創
2020-03-12 08:59:3447855瀏覽

excel下拉框多選打勾的設定方法

excel下拉方塊多重選取勾選的設定方法

一、顯示「開發工具」標籤。開啟Excel2010,點選左上方「檔案」圖示。點選“選項”,跳出“Excel選項”對話框,在“自訂功能區”中勾選“開發工具”,點選確定。

推薦:《excel教學

excel下拉框多選打勾的設定方法

excel下拉框多選打勾的設定方法

#二、設定下拉清單的選項內容。將工作表sheet2名稱修改為「data」,並在A欄輸入下拉選項。

excel下拉框多選打勾的設定方法

三、插入ListBox(列錶框)控制項。

1)  在工作表sheet1中,選擇A列,點選“開發工具”標籤,選擇“插入”裡的“列錶框”,並放置到A列中。

2) 選取列錶框控件,點選“設計模式”,在設計模式下點選“屬性”,彈出ListBox屬性框,選擇“按分類序”。修改MultiSelect項目為“1 – fmMultiSelectMulti”,修改ListStyle項目為“1 – fmListStyleOption”,設定ListFillRange項目為所選選單選項所在的表格名稱和儲存格範圍,具體格式為“data!A1:A8”。

excel下拉框多選打勾的設定方法

四、插入程式碼。在Excel中點選開發工具中的“Visual Basic”,開啟VB編輯器,在VB編輯器中雙擊Sheet1,開啟sheet1的編輯器,將以下程式碼貼到編輯器中並儲存。

在sheet1中儲存程式碼:

Private Sub ListBox1_Change()
    If ReLoad Then Exit Sub '见下方说明
    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
        If ActiveCell.Column = 1 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

excel下拉框多選打勾的設定方法

#在VB編輯器中雙擊Sheet2,將以下程式碼貼到編輯器中並儲存。 (該段程式碼是為了動態設定下拉式選單選項值而加的,如果下拉式選單的選項值固定,可以直接在ListBox的ListFillRange屬性中指定,不要以下的程式碼)

在sheet2(數據)中儲存程式碼:

Private Sub Worksheet_Change(ByVal Target As Range)
    Sheets("Sheet1").ListBox1.ListFillRange = "data!a1:a" & Cells(1, 1).End(xlDown).Row
End Sub

excel下拉框多選打勾的設定方法

將程式碼儲存後,關閉VB編輯器,在sheet1工作表中,點選A列儲存格,結果如下圖所示。

在模組1中儲存:

Public ReLoad As Boolean '開關listbox的change事件

excel下拉框多選打勾的設定方法

以上是excel下拉框多選打勾的設定方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn