Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2284|回复: 4

[已解决]请高手帮我把这个筛选程序优化一下,总感觉慢了点

[复制链接]
发表于 2014-9-24 19:34 | 显示全部楼层 |阅读模式
本帖最后由 jessylake 于 2014-9-24 19:36 编辑

按表选择需要的单词打印成单词条10.rar (33.09 KB, 下载次数: 6)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2014-9-24 20:03 | 显示全部楼层    本楼为最佳答案   
Private Sub CommandButton5_Click()
    tim = Timer
    Dim BRR()
    Set D = CreateObject("scripting.dictionary")
    For I = 1 To UBound(Arr)
        If TextBox2 <> "" Then
            If InStr(Arr(I, 1) & Arr(I, 2), LCase(TextBox2.Value)) Then
                D(Arr(I, 1)) = Arr(I, 2)
            End If
        Else
            D(Arr(I, 1)) = Arr(I, 2)
        End If
    Next
    With ListBox2
        For I = .ListCount - 1 To 0 Step -1
            If Not .Selected(I) Then
                If D.exists(.List(I, 0)) Then D.Remove .List(I, 0)
            Else
                .RemoveItem (I)
                TextBox4.Value = TextBox4.Value - 1
            End If
        Next
    End With
    K = D.KEYS
    T = D.ITEMS
    ReDim BRR(1 To D.Count, 1 To 2)
    For I = 0 To D.Count - 1
        BRR(I + 1, 1) = K(I)
        BRR(I + 1, 2) = T(I)
    Next
    With ListBox1
        .Clear
        .List = BRR
    End With
    TextBox3 = D.Count
    MsgBox "总计用时 " & Format(Timer - tim, "0.00") & " 秒!!", 64, "提示"
End Sub
回复

使用道具 举报

 楼主| 发表于 2014-9-24 20:12 | 显示全部楼层
本帖最后由 jessylake 于 2014-9-24 21:01 编辑
zjdh 发表于 2014-9-24 20:03
Private Sub CommandButton5_Click()
    tim = Timer
    Dim BRR()


试了一下,感觉没问题,就是挪过来,再加个蓝色选中,就更直观了

对字典还不熟,慢慢研究,真心感谢老师!

仔细看了看,非筛选表中的单词是过不去的,变蓝好像也不太好处理,视觉上的移动效果不是很直观,不过可以再研究研究,虽然没有实际意义,权当学习吧
回复

使用道具 举报

 楼主| 发表于 2014-9-24 22:59 | 显示全部楼层
本帖最后由 jessylake 于 2014-9-24 23:09 编辑
zjdh 发表于 2014-9-24 20:03
Private Sub CommandButton5_Click()
    tim = Timer
    Dim BRR()


老师我把字典功能加到原来的代码中,保留了原来的随便来回移动功能,不知道是不是数据量少,速度上看不出什么变化

按表选择需要的单词打印成单词条11.rar (36.6 KB, 下载次数: 4)
回复

使用道具 举报

 楼主| 发表于 2014-9-25 21:21 | 显示全部楼层
我把字典的功能基本上都用进去了,不知道效率有没有提高

按表选择需要的单词打印成单词条12.rar

36.06 KB, 下载次数: 6

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-24 14:31 , Processed in 0.482984 second(s), 12 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表