EXCEL中如何用编写宏来查找出两列中相同内容的单元格并作标识

有两列数据,想用宏命令来查找出A列中的数据与B列中是否有相同的,如有则作标识(在C列中对应位置写上1),如没有则C列对应位置留空,A列中数据依次与B列中数据作比对。... 有两列数据,

想用宏命令来查找出A列中的数据与B列中是否有相同的,如有则作标识(在C列中对应位置写上1),如没有则C列对应位置留空,A列中数据依次与B列中数据作比对。
展开
 我来答
yannan_zhu
2013-01-18 · TA获得超过1411个赞
知道小有建树答主
回答量:889
采纳率:83%
帮助的人:340万
展开全部
这个不需要用宏啊,直接用函数就可以,选中C列,输入函数:=if(a:a=b:b,1,"") ,按CTRL+ALT+ENTER结束。都不用下拉就有结果了。
一般用excel是能用系统自带的功能实现的,就不用函数,能用函数的,就不启用宏,因为会让数据越来越大,而且一但出现错误,查找起来也麻烦。
shxlss
推荐于2017-09-26 · 知道合伙人教育行家
shxlss
知道合伙人教育行家
采纳数:152 获赞数:1813
从事水土保持相关事业多年。

向TA提问 私信TA
展开全部
请更改按照以下条件更改表格,然后在运行程序。

第一,sheet的名字一定要改成 MAIN
第二,保证A列没有空行。

代码全文如下:

Sub FIND_101()

Dim i As Long
Dim D, T, p

Set wkDA = ThisWorkbook.Worksheets("MAIN")

i = 1

Do While wkDA.Cells(i, 1) <> ""

T = wkDA.Cells(i, 1)

With wkDA.Columns(2)

Set D = .Find(T, lookat:=xlWhole)

If Not D Is Nothing Then

wkDA.Cells(i, 3) = "1"

Else

wkDA.Cells(i, 3) = ""

End If

End With

i = i + 1

Loop

wkDA.Cells.EntireColumn.AutoFit

Set wkDA = Nothing

End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
葱之精灵
推荐于2017-09-30 · TA获得超过1172个赞
知道小有建树答主
回答量:167
采纳率:0%
帮助的人:138万
展开全部
给你写了一段查找的宏。
如果你是没有宏运行经验的,那么,请更改按照以下条件更改表格,然后在运行程序。

第一,sheet的名字一定要改成 MAIN
第二,保证A列没有空行。

代码全文如下:

Sub FIND_101()

Dim i As Long
Dim D, T, p

Set wkDA = ThisWorkbook.Worksheets("MAIN")

i = 1

Do While wkDA.Cells(i, 1) <> ""

T = wkDA.Cells(i, 1)

With wkDA.Columns(2)

Set D = .Find(T, lookat:=xlWhole)

If Not D Is Nothing Then

wkDA.Cells(i, 3) = "1"

Else

wkDA.Cells(i, 3) = ""

End If

End With

i = i + 1

Loop

wkDA.Cells.EntireColumn.AutoFit

Set wkDA = Nothing

End Sub
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
来自朱家尖积极进取的大平原狼
2013-01-18 · TA获得超过6270个赞
知道大有可为答主
回答量:6076
采纳率:71%
帮助的人:2523万
展开全部
不用宏,直接在C1单元格输入公式:
=IF(A1=B1,1,"")
将公式向下复制到相应行即可。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式