Excel精英培训网

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

[已解决]求VBA多层判断并用窗体显示信息

[复制链接]
发表于 2016-2-25 11:09 | 显示全部楼层 |阅读模式
本帖最后由 龙送农 于 2016-2-25 17:33 编辑

T列有abc三种信息,当T列只有a信息时,窗体显示a;当T列只有b信息时,窗体显示b;当T列只有c信息时,窗体显示c;当T列只有ab信息时,窗体显示ab;当T列只有bc信息时,窗体显示bc;当T列只有abc信息时,窗体显示abc;当T列无信息时,窗体显示“无信息”

最佳答案
2016-2-25 16:39
Sub test()
    Dim d, A, rng, str$
    Set d = CreateObject("scripting.dictionary")
    For Each rng In [t1:t30]
        d(rng.Value) = ""
    Next rng
    str = Join(d.keys)
    If Len(str) Then str = VBA.Replace(str, " ", "") Else str = "无信息"
    MsgBox str, , "提示"
End Sub

窗体显示附件.zip

13.14 KB, 下载次数: 15

发表于 2016-2-25 12:05 来自手机 | 显示全部楼层
建议上传附件。窗体显示a是什么效果
回复

使用道具 举报

 楼主| 发表于 2016-2-25 12:14 | 显示全部楼层
爱疯 发表于 2016-2-25 12:05
建议上传附件。窗体显示a是什么效果

刚上附件,请老师帮看!
回复

使用道具 举报

 楼主| 发表于 2016-2-25 15:59 | 显示全部楼层
龙送农 发表于 2016-2-25 12:14
刚上附件,请老师帮看!

刚上附件,请各位老师来帮看!
回复

使用道具 举报

发表于 2016-2-25 16:08 | 显示全部楼层
QQ截图20160225155952.jpg
窗体显示附件2.rar (15.53 KB, 下载次数: 3)
回复

使用道具 举报

 楼主| 发表于 2016-2-25 16:30 | 显示全部楼层
爱疯 发表于 2016-2-25 16:08
是要这样?

file:///C:\Documents and Settings\Administrator\Application Data\Tencent\Users\987400506\QQ\WinTemp\RichOle\67`3PSZNN)@%XXB@%F`$ELA.png
爱疯老师:
您写的代码基本达到目的,麻烦您帮改进一下代码,达到:
t1:t30改为循环的整列
T列无信息时,窗体显示“无信息”。

67`3PSZNN)@%XXB@%F`$ELA.png
回复

使用道具 举报

发表于 2016-2-25 16:39 | 显示全部楼层    本楼为最佳答案   
Sub test()
    Dim d, A, rng, str$
    Set d = CreateObject("scripting.dictionary")
    For Each rng In [t1:t30]
        d(rng.Value) = ""
    Next rng
    str = Join(d.keys)
    If Len(str) Then str = VBA.Replace(str, " ", "") Else str = "无信息"
    MsgBox str, , "提示"
End Sub

回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-20 16:42 , Processed in 0.358812 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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