日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

本文利用excel圖表記錄集技巧,創建級聯列表框。

示例效果如下圖1所示。

圖1

正如上圖1所演示的,創建的一組列表框-Region,Market和State可以聯動工作。也就是說,如果選擇列表框Region中的某項,那么列表框Market和State僅顯示在所選擇的Region項中與該項關聯的值。同樣,選擇列表框Market中的某項,列表框State中僅顯示與Market項中與該項關聯的值。

解決方法

使用ADO記錄集為子列表框提取記錄,使用父列表框的值作為條件。在這種情況下,Region和Markets都是父列表框,因為它們影響如何提供下一級的值。Market和State作為子列表框,因為它們的值取決于其上一級列表框。

在本示例中,創建一個函數,接受子列表框作為其參數,然后使用該列表框判斷提取什么數據以及填充哪個列表框。

打開VBE,插入一個標準模塊,輸入下列代碼:

Function CascadeChild(TargetChild As OLEObject)

Dim Myconnection As Connection

Dim Myrecordset As Recordset

Dim Myworkbook As String

Dim strSQL As String

Set Myconnection = NewConnection

Set Myrecordset = NewRecordset

‘識別要引用的工作簿

Myworkbook =Application.ThisWorkbook.FullName

‘打開對該工作簿的連接

Myconnection.Open”Provider=Microsoft.Jet.OLEDB.4.0;” & _ ? ?“Data Source=”& Myworkbook & “;” & _ ? ?“ExtendedProperties=Excel 8.0;” & _ ? ?“Persist SecurityInfo=False”

‘確定正確的SQL語句,在父列表框中使用該值作為查詢的參數

Select CaseTargetChild.Name

Case Is =”lstMarket”

strSQL = “SelectDistinct [Market] AS [tgtField] from [Sheet1$A1:C40] Where [Region]='”& Sheet1.lstRegion.Value & “‘”

Case Is =”lstState”

strSQL = “SelectDistinct [State] AS [tgtField] from [Sheet1$A1:C40] Where [Market]='”& Sheet1.lstMarket.Value & “‘”

End Select

‘裝載查詢到記錄集中

Myrecordset.Open strSQL,Myconnection, adOpenStatic

‘填充目標子列表框

With TargetChild.Object

.Clear

Do

.AddItemMyrecordset![tgtField]

Myrecordset.MoveNext

Loop UntilMyrecordset.EOF’自動選擇列表框中的第一個值

.Value = .List(0) ? ?End With

‘清理 ? ?Myconnection.Close

Set Myrecordset = Nothing

Set Myconnection =Nothing

End Function

每個父列表框的OnClick事件只是簡單地調用上面的函數,傳遞目標子列表框作為函數的參數:

Private Sub lstMarket_Click() ? ?CallCascadeChild(ActiveSheet.OLEObjects(Sheet1.lstState.Name))End Sub Private Sub lstRegion_Click() ? ?Call CascadeChild(ActiveSheet.OLEObjects(Sheet1.lstMarket.Name))End Sub

說明

1.示例中使用的是ActiveX列表框控件。

2.需要在VBE中設置對Microsoft ActiveX Data Objects Library的引用,如下圖2所示。

圖2

分享到:
標簽:excel圖表制作 excel常用函數 excel數據透視表 Excel教程
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定