ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

   
高效办公必会的Office实战技巧 永久免费,网表让Excel秒变数据库 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
Excel不给力? 何不试试FoxTable! 国内首部Excel函数公式学习大典 职场充电黑科技, Office微视频教程 免费下载Excel行业应用视频
300集Office 2010微视频教程 Tableau-数据可视化工具 突破Excel限制,用活字格提高效率 12门Excel免费公开课任你学
你的Excel 2010实战技巧学习锦囊 欲罢不能, 过目难忘的 Office 新界面 免费的Excel考勤计算系统
查看: 108|回复: 7

[求助] 求助修改高手代码,能删除单元格内5位及5位以上的数据

[复制链接]

TA的精华主题

TA的得分主题

发表于 2017-7-16 17:42 | 显示全部楼层 |阅读模式
求助修改高手代码,能删除单元格内5位及5位以上的数据,详见附件

Book1.rar

136.97 KB, 下载次数: 13

TA的精华主题

TA的得分主题

发表于 2017-7-16 17:47 | 显示全部楼层
  1. Sub lkyy2()
  2. Dim ar As Variant, i%
  3. ar = Range("q1").CurrentRegion
  4. For i = 2 To UBound(ar)
  5.     If Len(ar(i, 2)) < 4 Or Len(ar(i, 2)) >= 5 Then
  6.         Range("q" & i & ":r" & i).ClearContents
  7.     End If
  8. Next
  9. End Sub
复制代码

评分

参与人数 1鲜花 +2 收起 理由
花花的花花 + 2 优秀作品

查看全部评分

TA的精华主题

TA的得分主题

发表于 2017-7-16 17:56 | 显示全部楼层
  1.     If Len(ar(i, 1)) * (ar(i, 2) < 1000) Or Len(ar(i, 1)) * (ar(i, 2) >= 5000) Then
复制代码

TA的精华主题

TA的得分主题

发表于 2017-7-16 18:11 | 显示全部楼层
Sub lkyy2()
Dim ar As Variant, i%
ar = Range("q1").CurrentRegion
For i = 2 To UBound(ar)
    If Len(ar(i, 1)) * (ar(i, 2) >= 10000) Then
        Range("q" & i & ":r" & i).ClearContents
    End If
Next
End Sub

TA的精华主题

TA的得分主题

 楼主| 发表于 2017-7-16 18:15 | 显示全部楼层
凌空一羽 发表于 2017-7-16 18:11
Sub lkyy2()
Dim ar As Variant, i%
ar = Range("q1").CurrentRegion

感谢你的不懈帮忙,非常感谢,一个帖子只能评分一次,你的能力跻身一等一高手毋庸置疑,希望你以后多多出书,多多发财。青山不老绿水长流,他年相遇后会有期

TA的精华主题

TA的得分主题

发表于 2017-7-16 20:39 | 显示全部楼层
  1. Sub test()
  2.     Dim i
  3.     For i = 2 To [R65536].End(xlUp).Row
  4.         If Cells(i, 18) < 1000 Or Cells(i, 18) > 9999 Then
  5.             Cells(i, 18) = ""
  6.             Cells(i, 17) = ""
  7.         End If
  8.     Next
  9. End Sub
复制代码

TA的精华主题

TA的得分主题

发表于 2017-7-16 22:53 | 显示全部楼层
花花的花花 发表于 2017-7-16 18:15
感谢你的不懈帮忙,非常感谢,一个帖子只能评分一次,你的能力跻身一等一高手毋庸置疑,希望你以后多多出 ...

Sub lkyy2()
    ar = Range("q1").CurrentRegion
    Set D = CreateObject("htmlfile"): Set W = D.parentWindow
    W.execScript "function f(s){var a=/\d(?=(\d{0,3}))\1\d+/.test(s);return function(){return(a)}}"
    For i = 2 To UBound(ar)
        If W.eval("a=f('" & ar(i, 2) & "');a()") Then
            Range("q" & i & ":r" & i).ClearContents
        End If
        W.execScript "a=null"
    Next
End Sub

TA的精华主题

TA的得分主题

发表于 2017-7-18 08:53 | 显示全部楼层
Sub Macro1()

For i = 2 To 7
If Cells(i, "r") >= 10000 Or Cells(i, "r") <= 999 Then

    Cells(i, "r").ClearContents
    cellls(i, "q").ClearContents
    End If
    Next
End Sub
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

关闭

最新热点上一条 /1 下一条

关注官方微信,每天坐享新鲜教程

手机版|关于我们|联系我们|ExcelHome   

GMT+8, 2017-11-24 19:04 , Processed in 0.073693 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.3

© 2001-2017 Wooffice Inc.

   

沪公网安备 31011702000001号 沪ICP备11019229号

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:徐怀玉律师 李志群律师

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