使用excel vba自动对比两列时间数字
有两列时间数字,格式都一样,需要将这两列进行比较,数列1的每一行在数列2中查找是否存在,如果不存在就将数列1中的这一行标注颜色,或其他方法剔出,就是数据很多,如果排序也很...
有两列时间数字,格式都一样,需要将这两列进行比较,数列1的每一行在数列2中查找是否存在,如果不存在就将数列1中的这一行标注颜色,或其他方法剔出,就是数据很多,如果排序也很麻烦,所以想有没有用vba自动对比的方法,请高手指教。
展开
6个回答
展开全部
用公式 =if(countif(b:b,A1),1,0)
在数列1第一个格旁边新插一行,在新单元格里粘贴上面的公式,其中A1为数列1的第一个单元格地址,b:b为数列2的区域,比如数列2在b列,那就是b:b。然后向下填充。如果数列1的结果在数列2存在,则返回"1",不存在则返回"2".把新算的这行原地选择性粘贴数值一次,排序后标颜色即可
在数列1第一个格旁边新插一行,在新单元格里粘贴上面的公式,其中A1为数列1的第一个单元格地址,b:b为数列2的区域,比如数列2在b列,那就是b:b。然后向下填充。如果数列1的结果在数列2存在,则返回"1",不存在则返回"2".把新算的这行原地选择性粘贴数值一次,排序后标颜色即可
更多追问追答
追问
你好,我试验了可以,但是我试验了两行就不行了,返回值都是0,这是问什么,我可以加你为百度好友吗?
追答
加我好友 给你搞定
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Sub 清除不同数据()
Dim iObjRange As Range: Set iObjRange = Range("A1:A10000") '对比的目标区域
Dim iFindRange As Range: Set iFindRange = Range("B:B") '查找的目标区域
Dim iResult As Range: Set iResult = Range("A:A") '结果的输出区域
Dim iCell As Range, iFind As Range
For Each iCell In iObjRange
If iCell <> "" Then
Set iFind = iFindRange.Find(iCell.Value, LookIn:=xlValues, LookAt:=xlWhole)
If iFind Is Nothing Then
iResult.Cells(iCell.Row, 1).Value = ""
End If
End If
Next
End Sub
Dim iObjRange As Range: Set iObjRange = Range("A1:A10000") '对比的目标区域
Dim iFindRange As Range: Set iFindRange = Range("B:B") '查找的目标区域
Dim iResult As Range: Set iResult = Range("A:A") '结果的输出区域
Dim iCell As Range, iFind As Range
For Each iCell In iObjRange
If iCell <> "" Then
Set iFind = iFindRange.Find(iCell.Value, LookIn:=xlValues, LookAt:=xlWhole)
If iFind Is Nothing Then
iResult.Cells(iCell.Row, 1).Value = ""
End If
End If
Next
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
dim lastRow, i, j as integer
lastRow = activesheet.usedRange.Rows.count
for i = 1 to lastrow
if Cells(i,1) = "" then exit sub
for j = 1 to lastrow
if Cells(i,1) = cells(j,2) then
exit sub
else
if cells(i,1).rows = lastrow then cells(i,1).interior.colorindex = 5
end if
next j
next i
lastRow = activesheet.usedRange.Rows.count
for i = 1 to lastrow
if Cells(i,1) = "" then exit sub
for j = 1 to lastrow
if Cells(i,1) = cells(j,2) then
exit sub
else
if cells(i,1).rows = lastrow then cells(i,1).interior.colorindex = 5
end if
next j
next i
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Sub find1()
Sheets("sheet1").Select
finalrow = Cells(63333, 1).End(xlUp).Row
For i = 2 To finalrow
If Application.CountIf(Range(Cells(2, 2), Cells(2, finalrow)), Cells(i, 1)) = 0 Then
Cells(i, 1).Select
Selection.Interior.ColorIndex = 44
End If
Next i
End Sub
Sheets("sheet1").Select
finalrow = Cells(63333, 1).End(xlUp).Row
For i = 2 To finalrow
If Application.CountIf(Range(Cells(2, 2), Cells(2, finalrow)), Cells(i, 1)) = 0 Then
Cells(i, 1).Select
Selection.Interior.ColorIndex = 44
End If
Next i
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询