• 提高认识 聚焦“精准” 坚决打赢脱贫攻坚战 2019-06-16
  • 农村土地权确权将给农民带来什么? 2019-05-31
  • 空调还装墙壁上?聪明人都是往这里装,好看又省地 ——凤凰网房产 2019-05-20
  • 打开书籍,了解文物背后的中国温度 2019-05-20
  • 女性之声——全国妇联 2019-05-14
  • 着力增强“三力一性” 提升党建工作质量 2019-05-14
  • 李思思怀孕春晚主持人告急 董卿或可救场(图) 2019-05-09
  • 保定市“吃人”下水道恶臭难闻藏危险 2019-05-09
  • 不希望孩子们以后做这个——菲律宾手工开矿人生活实录 2019-05-06
  • 朔城警方抓获一名故意伤害致死犯罪嫌疑人 2019-05-02
  • 四川:高宇化工230万吨磷石膏渣违法堆存——高宇化工被挂牌督查 2019-04-29
  • 热刺孙兴慜领衔 “太极虎”能否逢凶化吉猛虎出山 2019-04-29
  • “直播政务述职”是与民沟通良机 2019-04-28
  • 日本大阪6.1级强震4死逾300伤 工厂及店铺恢复运营 2019-04-28
  • 学思践悟丨修好共产党人“心学” 2019-04-27
  • 欢迎您访问南京安优网络官方网站,本公司专注于:网站制作、小程序开发、网站推广。 24小时服务热线:400-8793-956
    当前位置:3d组六走势图 > 资讯中心 > 安优观点
    Sorry,你的问题我只能想到一个完美解决方案
    来源:3d组六走势图 时间:2018-01-19 08:27:45

    3d组六走势图 www.flqn.net          最近有位小伙伴私聊我一个问题,我考虑了许久也没能想到第二个完美解决方案,问题是这样的,该小伙伴丢给我一个Excel文件,文件有两份工作表,我稍作简化处理了一下。

            第一张工作表截图如下:

            第二张工作表截图如下:

            仔细看上面两张截图,可以发现第一张工作表中的节点信息就是由多个申告号码组成。刚收到这样的表格,我以为申告号码只会出现在一个节点信息中。所以我就想到使用Vlookup的部分匹配来获取运维严障单号,我使用的公式为=IFERROR(VLOOKUP("*"&A2&"*",IF({1,0},Sheet3!$B1:$B$1500,Sheet3!$A1:$A$1500),2,0),""),该公式就不在介绍了,前期发表的多个图文教程都有介绍类似逆向查找的说明。
            就这样,我把公式发给了私聊我的小伙伴,万万没想到的是,上面的公式是有问题的。等我发现该错误的时候,是在使用VBA完美解决申告号码会出现在多个节点信息列中。VBA代码如下:
     
    Sub sutTest()
        Dim i, iRow As Integer
        Dim strNum As String
        Dim sutArray
        '关闭屏幕刷新
        Application.ScreenUpdating = False
        '获取运维号和节点信息
        Worksheets("Sheet3").Select
        sutArray = Range([A2], [B2].End(xlDown))
        '循环处理申告号码
        Worksheets("Sheet4").Select
        Range([B2], [B65535]).ClearContents
        Range("A2").Select
        iRow = 1
        strNum = ""
        '循环模糊比对,能匹配到则放入运维严障单号列中
        Do While ActiveCell.Value <> ""
            For i = 1 To UBound(sutArray)
                If sutArray(i, 2) Like "*" & ActiveCell.Value & "*" Then
                    strNum = strNum & sutArray(i, 1) & ","
                End If
            Next
            If strNum <> "" Then
                strNum = Left(strNum, Len(strNum) - 1)
            End If
            ActiveCell.Offset(0, 1).Value = strNum
            strNum = ""
            ActiveCell.Offset(1, 0).Select
        Loop
        Application.ScreenUpdating = True
    End Sub
     
            上面的代码都加以注释了,也非常容易理解,就不在详细解释了。第二张工作表的申告号码共有一万六千多条,我刚开始使用函数来解决该问题的时候,Excel还有点卡顿。
            其实第二张工作表截图中的运维严障单号列就是通过VBA代码匹配并填写的,小伙伴可以亲自试试。接下来继续讲解上面介绍的问题,我在第二张工作表D列输入上面的公式,并下拉到一万多行,得出的结果如下图所示:

            不知道各位小伙伴通过上图能否看到问题的所在?就拿申告号码ADSLD2300660153为例,使用VBA能匹配得到YZ-ZH-20180110-00001,但使用Vlookup部分匹配却什么都没找到,正常来说,是不会出现这种问题的,Vlookup不能返回多个结果,但只要有符合条件的值,一定会返回的。那出现该问题的原因是什么呢?为了找到该问题,我尝试分解公式,从最简单的公式开始,把公式中的Sheet3!$B1:$B$15提取出来,放到空白单元格,按下F9,详细操作请见如下动态图:

            可以看到第一张工作表的B2单元格的值显示为了#VALUE!,到这里我就明白,为啥我给出去的公式是错误的了。为了搞明白该问题,我特地把第一张工作表的B2和B3单元格的值复制到新的工作表中,然后使用Len函数查看单元格值的长度,具体操作如下动态图所示:

            最终终于确定了,当单元格长度超过255后,在函数中都会返回#VALUE!, 为了确定是否是微软的Bug,我还特地把制作好的工作簿拷贝到安装了WPS 2016专业版的电脑上,尝试打开查看,结果惊呆了,详细如下如所示:

            发现WPS没有该问题,Vlookup函数可以正确显示结果,头一次发现了WPS软件的强大之处,国产软件V587(威武霸气)。至于微软Office为什么显示错误,不要问我,因为我也不知道,有哪位小伙伴知道,请一定记得告诉我哦。
            
            好了,今天的介绍就到这了,大家如果在学习的VBA等过程中遇到任何问题,欢迎留言

    本文地址://www.flqn.net/news/1444.html
    Tag: 完美 解决 方案
    专业服务:3d组六走势图,3d组六走势图,3d组六走势图
    联系电话:025-65016872
    上一篇: 暴利赚钱莫过风水,塔罗牌占卜也还不错
    下一篇: 多关键字排序,多少个排序条件都可以一起来
    最新案例
    泰杰赛
    泰杰赛
    苏派教育
    苏派教育
    全国大学生公共卫生大赛
    全国大学生公共卫生大赛
    南京德普筒仓建安工程有限公司
    南京德普筒仓建安工程有限公司
    中国非金属材料南京矿山工程有限公司
    中国非金属材料南京矿山工程有限公司
    你可能感兴趣
    让您的网站更易于访问
    使用SEO和内容来增加您的酒店网站
    每个企业应该知道的7种视频类型
    没人告诉你关于PPC的事
    10个?;て放频纳芾聿呗?/a>
    为什么从头开始创建网站可以改善您的SEO策略
    如何为您的大型网站提供未来证明
    为什么视频是现代网页设计的必要条件
    最后更新
    南京网站制作阐述10个应该将百度搜索广告外包的理由 南京网站建设公司一直强调维护您网站的重要性 如何计算自己的获客成本 南京网站制作解析你的网站是如何赶走你的客人的? 南京APP开发公司说说APP营销基础 南京网站建设公司让你知道电商自建站不求人:8大电子商务平台测评(2019篇) 南京网站制作说说建立商业网站的提示 SEO初学者问答 - 第1部分
    服务项目
    3d组六走势图 营销型网站 微信营销 IDC网站 精品案例
  • 提高认识 聚焦“精准” 坚决打赢脱贫攻坚战 2019-06-16
  • 农村土地权确权将给农民带来什么? 2019-05-31
  • 空调还装墙壁上?聪明人都是往这里装,好看又省地 ——凤凰网房产 2019-05-20
  • 打开书籍,了解文物背后的中国温度 2019-05-20
  • 女性之声——全国妇联 2019-05-14
  • 着力增强“三力一性” 提升党建工作质量 2019-05-14
  • 李思思怀孕春晚主持人告急 董卿或可救场(图) 2019-05-09
  • 保定市“吃人”下水道恶臭难闻藏危险 2019-05-09
  • 不希望孩子们以后做这个——菲律宾手工开矿人生活实录 2019-05-06
  • 朔城警方抓获一名故意伤害致死犯罪嫌疑人 2019-05-02
  • 四川:高宇化工230万吨磷石膏渣违法堆存——高宇化工被挂牌督查 2019-04-29
  • 热刺孙兴慜领衔 “太极虎”能否逢凶化吉猛虎出山 2019-04-29
  • “直播政务述职”是与民沟通良机 2019-04-28
  • 日本大阪6.1级强震4死逾300伤 工厂及店铺恢复运营 2019-04-28
  • 学思践悟丨修好共产党人“心学” 2019-04-27