vb listbox 删除最后空白记录

我在的list里面有很多个空想我只想删除liast最后的空项例如:123456把6后面的空项删除,1至6中间的空项保留,前提是6后面有多少条空项不确定,要详细的代码?... 我在的list里面有很多个空想
我只想删除liast最后的空项
例如:
1

2

3

4

5
6

把6后面的空项删除,1至6中间的空项保留,前提是6后面有多少条空项不确定,要详细的代码?
展开
 我来答
HotMousE
2013-05-29 · TA获得超过146个赞
知道小有建树答主
回答量:212
采纳率:100%
帮助的人:177万
展开全部

打开附件查看,或手动窗口上放

  List1               用于显示

  Command1    生成模拟条件

  Command2    整理

Option Explicit

Private Sub Command1_Click()

    Dim i As Long
    
    List1.Clear
    Randomize
    While i < 10
        If Rnd() Mod 6 Then
            List1.AddItem ""
        Else
            List1.AddItem i
            i = i + 1
        End If
    Wend

End Sub

Private Sub Command2_Click()

    Dim Index As Long
    Dim Value As String
    Dim flagValue As Long
    
    Index = 0
    flagValue = 0
    While Index < List1.ListCount
        Value = Trim(List1.List(Index))
        Index = Index + 1
        
        If Value = "" Then
            ' 这里可以改你的条件
            ' 目前设置是只保留1-6数字中间的空白行
            If flagValue < 1 Or flagValue > 6 Then
                List1.RemoveItem Index - 1
                Index = Index - 1
            End If
        ElseIf Val(Value) > 0 Then
            flagValue = Val(Value)
        End If
    Wend

End Sub



已赞过 已踩过<
你对这个回答的评价是?
评论 收起
syx54
2013-05-29 · TA获得超过7378个赞
知道大有可为答主
回答量:6567
采纳率:83%
帮助的人:2713万
展开全部
那就从后面的项开始,朝前一一判断,空的就删除,非空的就结束!

Dim i As Integer
Dim n As Integer
n = List1.ListCount
For i = n - 1 To 0 Step -1
If List1.List(i) <> "" Then
Exit Sub
Else
List1.RemoveItem i
End If
Next i
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
szqaly
2013-05-29 · TA获得超过1745个赞
知道大有可为答主
回答量:2107
采纳率:77%
帮助的人:1516万
展开全部
要不要删除只有空格字符的项?要的话补充一下
最上那条回答:
If trim(List1.List(i))<> "" Then
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式