小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Excel之VBA常用功能應用篇:利用ListView控件實現分頁顯示效果

 每天學學Excel 2022-02-15

分頁顯示在網頁制作中是一件十分普遍的事情,因為在瀏覽一些頁面的時候總不會都顯示在一個頁面里。

同樣,在Excel工人表中,也會有分頁的一中方法,只不過在表中以隱藏方式來實現分頁。

本節(jié)主要介紹內容為在vba窗體中實現分頁顯示數據表。

其中,運用到許多知識,包括對工作表SQL查詢,以及ListView控件的添加。

這些在Excel初級應用中,通常不會用到,當然也沒有必要用。

但是要想做到自由控制數據,那就是一件必然要學會的內容。

如果,有一些數據庫操作技能,那么對本節(jié)的理解,還是十分容易的。

下圖為顯示效果:

圖中顯示一出一個工作表的數據內容,下面有一些按鈕,可以實現數據表上下翻頁功能。

這就是說,不需要把所有的工作記錄都顯示出來,可以一頁頁地翻看,如果有幾百頁,那么查找起來還是有一些便捷性的。

下面重點看一下代碼:

Private Sub AddListView(Lobj As Object, rsPage As Integer)

Dim conn As Object

Dim rs As Object

Dim StrPath As String

Dim StrSql As String

Dim i As Integer, j As Integer

Set conn = CreateObject("ADODB.Connection")'新建連接對象

Set rs = CreateObject("ADODB.RecordSet")'新建記錄對象

StrPath = ThisWorkbook.FullName

conn.Open "Provider=Microsoft.ACE.OLEDB.12.0;" & "Extended Properties=Excel 12.0;" _

& "Data Source=" & StrPath'打開連接對象

StrSql = "SElECT * FROM [" & xSheet & "$]"'查詢工作表語句

rs.Open StrSql, conn, 1, 1

rs.pagesize = 20 '設置每頁顯示記錄數

rs.absolutepage = rsPage '設置當前頁數

Lobj.ColumnHeaders.Clear

For i = 0 To rs.Fields.Count - 1

Lobj.ColumnHeaders.Add , , rs.Fields(i).Name

Next i

With Lobj

.ListItems.Clear

For i = 1 To rs.pagesize 'rs.RecordCount

If rs.EOF Then Exit For

.ListItems.Add , , rs.Fields(0).Value

For j = 1 To rs.Fields.Count - 1

If VBA.Len(rs.Fields(j).Value) <> 0 Then

.ListItems(i).SubItems(j) = rs.Fields(j).Value'添加ListView數據

End If

Next j

rs.movenext '下一記錄

Next i

End With

rs.Close

conn.Close

Set rs = Nothing

Set conn = Nothing

End Sub

代碼中應用了Recordset 對象,ADO Recordset 對象用于容納一個來自數據庫表的記錄集,示例中用來存放工作表的記錄集。

還有一個Connection對象,ADO Connection 對象用于創(chuàng)建一個到達某個數據源的開放連接,也就是和數據表建立鏈接的對象。

至于這兩個對象是如何工作的,并不需要了解,因為它已經做好一切,只需要合理地運用對象的方法即可。

以后會專門來介紹關于ADO對象的使用方法。

按鈕代碼如下所示:

Private Sub 第一頁()

Dim x As Integer

If Not VBA.IsNumeric(Me.TextBox1.Value) Then Exit Sub

x = Me.TextBox1.Value

If x = 1 Then

MsgBox "已經是第一頁", vbInformation, "提示"

Exit Sub

Else

AddListView Me.ListView1, 1 '刷新ListView

Me.TextBox1.Value = 1

End If

End Sub

Private Sub 下一頁()

Dim x As Integer

If Not VBA.IsNumeric(Me.TextBox1.Value) Then Exit Sub

x = Me.TextBox1.Value

If x = 1 Then

MsgBox "已經是第一頁", vbInformation, "提示"

Exit Sub

End If

x = x - 1

If x >= 1 And x <= xCount Then

AddListView Me.ListView1, x '刷新ListView

Me.TextBox1.Value = x

Else

Me.TextBox1.Value = 1

End If

End Sub

實現上下翻頁功能之后,就不用再為一個工表,全部加載到LIstView頁煩惱了。

利用工具實現數據的有規(guī)律組合,這就是我們要達到的最簡單的目的。

    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多