EXCEL 宏编写 - 求救

来源:百度知道 编辑:UC知道 时间:2024/05/10 22:36:55
有两个EXCEL表格 - 表A / 表B

比如说表A的第一列和表B的第一列信息是一样的,只是顺序不一样。
表B第一列中每一个单元格内的信息都对应着该一行第N列中单元格中的一个信息,这个信息是我需要的,而且是完全正确的。
同样的表A和表B格式基本相同,第一列中每一个单元格内的信息也都对应着该一行第M列中单元格中的一个信息,但这个信息我不知道是不是正确的。
所以我希望的结果是拿这两个表格都有的信息 - 就是这两个表第一列单元格的信息作为关联,只要点一下表A中的那个宏按钮,就把表B中所对应的N列的信息和表A中所对应的M列的信息做对比,如果相一致就在表A中该行某一个空白单元格内输入Y,如果不一致就把表A中M列的那个单元格的字体打红加粗,然后也是在该行某一个空白单元格内输入表B所对应的正确的信息。
不知道我表达清楚了没有,因为工作上需要比较急一点,如果愿意帮忙写一个宏的话,十分感谢!!!!

不需要宏,用公式和条件格式就可以解决:
假定两个表的第一行为表头,请在表A后面空白列第二行输入公式:
=IF(M2=VLOOKUP(A2,表B!A:N,14,0),"Y",VLOOKUP(A2,表B!A:N,14,0))
将公式向下复制到相应行.

选定表A的M列,点"格式"->"条件格式",将条件设为:
公式=M1<>VLOOKUP(A1,表B!A:N,14,0)
点"格式"->"字体",设置好红色和加粗.
点两次"确定".

用vlookup函数可以轻松解决这个问题。假如有两个文档: SHEET1、SHEET2,两表中第一列都为姓名,第二、三、四分为其他内容。在任一文档(SHEET1)的第一行的空白单元格处输入"= vlookup(a1,sheet2!a:d,1,0),这样,在SHEET1中就把SHEET2中的数据引用过来了,回车后返回一个值,然后向下填充。你就可以轻松的看出有没有重复的姓名了。