excel 数据筛选 有一列数字,每个单元格都有数字 如何统计出这列中缺失数字
要求统计出以一个固定的数字开始 相比于1 2 3 4 5 6 ...这样的连续数列缺失的项目 并将原始项目录入另外一行 缺失项目留空
这个项目是统计分机号码的 原始数据不连续 行数不确定 分机号码范围8000-8999 几位列出的公式好像没反应 展开
按Alt+F11,并双击左侧的 sheet1
复制正面的代码粘贴到里面
Sub px()
Dim a, m, b, c
For a = 1 To 999
m = Cells(Rows.Count, 1).End(xlUp).Row
b = Cells(Cells(a, 1).Row, 1) - 7999
If b > 0 Then
Range("A" & a & ":A" & m).Select
Selection.Cut
Range("A" & b).Select
ActiveSheet.Paste
Else
End If
Next a
For c = 1 To 999
If Range("A" & c).Value = "" Then
Range("b" & c) = 7999 + c
End If
Next c
End Sub
然后运行该宏
原数据与你的追问图,下图为运行后的结果
好像也不太对 提示应用程序定义或对象定义错误 代码1004
我测试好了的,你复制从
sub px() 到 end sub
不能多也不能少
还有,我编代码没考滤表头,是从第1行开始的,你先把表头部分删除,处理好了,再加上表头部分 不然会报错
原始数据必须从A1开始
如果是统计8000-8999这个连续号码段的,那公式修改一下就可以=IF(ISNA(VLOOKUP(ROW()+7999,A:B,2,0)),"",ROW()+7999).
好像不太对啊
能跟我解释下原理吗 加上函数的作用