当前位置:首页 > 编程笔记 > 正文
已解决

限制LitstBox控件显示指定行数的最新数据(3/3)

来自网友在路上 167867提问 提问时间:2023-11-06 14:55:45阅读次数: 67

最佳答案 问答题库678位专家为你答疑解惑

实例需求:由于数据行数累加增加,控件加载的数据越来越多,每次用户都需要使用右侧滚动条拖动才能查看最新数据。
在这里插入图片描述
因此希望ListBox只加载最后10行数据(不含标题行),这样用户可以非常方便地选择数据,如下图所示。
在这里插入图片描述
前面两篇博客已经提供了两种实现方式。

限制LitstBox控件显示指定行数的最新数据(1/3)
限制LitstBox控件显示指定行数的最新数据(2/3)

对于第二种实现方式,用户可以选中ListBox控件的标题行,必需在事件代码种增加相应的异常处理,接下来给大家再解释一个解决方案。

在VBE中设计用户窗体时,在ListBox控件之上创建三个Label控件,模拟实现标题行,如下图所示。当然创建一个Label控件,通过空格控制标题字段的显示位置也是可以的。
在这里插入图片描述
示例代码如下。

Private Sub UserForm_Initialize()Dim arr(), lastRow As LongDim j As Integer, i As IntegerWith ActiveSheetlastRow = .Cells(.Rows.Count, 1).End(xlUp).RowReDim arr(1 To IIf(lastRow > 10, 10, lastRow - 1), 2)If lastRow > 10 ThenFor i = 1 To 10For j = 1 To 3arr(i, j - 1) = .Cells(lastRow - 10 + i, j).TextNextNextElseFor i = 1 To lastRow - 1For j = 1 To 3arr(i, j - 1) = .Cells(i + 1, j).TextNextNextEnd IfEnd WithWith Me.ListBox1.ColumnHeads = False.ColumnCount = 3.ColumnWidths = "75;75;75".List = arr()End With
End Sub

示例代码的主要逻辑与上一篇博客类似,这里不再赘述。

用户窗体中的ListBox如下图所示。

在这里插入图片描述

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"限制LitstBox控件显示指定行数的最新数据(3/3)":http://eshow365.cn/6-33713-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!