1、在Excel表的頂端插入一個(gè)類(lèi)似Access數據庫字段名那樣的表頭,也就是列名,類(lèi)似于“學(xué)號”、“姓名”這樣的。 2、在VB窗口添加一個(gè)ListBox控件,List1(我都不知道要用什么來(lái)顯示分組,隨便用這個(gè)了)。
Private Sub Command1_Click() '工程->引用->Microsoft ActiveX Data Objects 2.X Library Dim xlConn As New ADODB.Connection Dim xlRs As New ADODB.Recordset Dim strConn As String Dim xlCnt As Integer Dim 學(xué)號() As String, 姓名() As String
'連接數據庫的字符串,后面的“HDR=yes”需要注意,它的意思是把Excel表第一行作為字段名,第二行開(kāi)始方是有效數據。HDR=no則反之,從第一行開(kāi)始就看做有效數據。 strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\Book1.xls;Extended Properties='Excel 8.0;HDR=yes;IMEX=1'" '打開(kāi)Excel連接 xlConn.Open strConn '像打開(kāi)數據庫一樣,使用SQL語(yǔ)言,打開(kāi)名稱(chēng)為“sheet1”的工作表 xlRs.Open "select * from [sheet1$]", xlConn, adOpenStatic, adLockReadOnly '獲得表中數據的記錄數 xlCnt = xlRs.RecordCount
'讀出名稱(chēng)為“Sheet1”的工作表里面的數據 ReDim 學(xué)號(xlCnt), 姓名(xlCnt) For i = 1 To xlCnt 學(xué)號(i) = Str(xlRs("學(xué)號")) 姓名(i) = xlRs("姓名") xlRs.MoveNext Next
'全部讀進(jìn)數組之后,就可以開(kāi)始分組啦,這里你可以隨便按照你的要求改了 For i = 1 To xlCnt List1.AddItem (學(xué)號(i) & "," & 姓名(i)) If i Mod 4 = 0 Then List1.AddItem (" ") Next
'關(guān)閉sheet對象,關(guān)閉Excel連接 xlRs.Close xlConn.Close Set xlRs = Nothing Set xlConn = Nothing
End Sub |