安全生产费分录:excel中,怎么把工作簿1的内容覆盖工作簿2的内容时,让相同的记录以别的颜色显示出来

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/10 09:01:22
呵呵,有时候我要在一个工作簿中查找另一个工作簿的内容,能没有什么办法,让我能把一个工作簿的表格复制到另一个工作簿之后,让所有相同的记录加亮显示,或以其他颜色显示出来.

相同记录指什么?
a.完全相同?(没办法)
b.以特有标识(如代码、名称)相同既为相同标识?
对于Sheet1和Sheet2中有“相同”的记录,在每一个表里应该都有序号列,就可以利用序号

来相互对应查找,以下针对在Sheet2中显示Sheet1中相同记录的序号!

可以用VLOOKUP()函数,使用方法如下:
在Sheet2的序号列的左侧插入“Sheet1序号”列
①先做如下列命名:
Sheet2
A:Sheet1序号
B:序号
C:名称(识别标识)
D:序号(函数功能需要搜索数据在首列,此列设置后可以隐藏)

Sheet1表同
②在Sheet2的A3单元格中插入公式:
=VLOOKUP()
弹出对话框,显示下面4栏
在栏Lookup_value中选择单元格C3 显示:C3
在栏Table_array中选择Sheet1表的C列数据区域:显示Sheet1!C3:D100,(假设有100个数据)
在栏Col_index_num中选择 2 (被搜索区域的第2列_复制的序号列)
在栏Range_lookup忽略,引用精确匹配
回车
再选A3,编辑栏中显示
=VLOOKUP(C3,Sheet1!C3:D100,2)
注意:一定要把公式改为,用于所定被搜索数据区,防止下拉复制时数据区改变
=VLOOKUP(C3,Sheet1!c$3:I$100,2)
然后整列下拉复制,就可以显示出与Sheet2表中相同的记录在Sheet1表中的记录序号.
可能会出现"#N/A",这表示Sheet1表中没有该项记录,或记录名填写不同.
希望有参考价值.

对于您的问题,我想好像没有什么办法完全达到。
但有两种折衷的方法。
第一种:
假设你的两个数据分别来源于Sheet1和Sheet2,而且两张表的相对位置是一样的,都是从A1单元格开始的。
那么你在空的Sheet3中的A1单元格输入:
=IF(Sheet1!A1=Sheet2!A1,1,0)
确定后选中,复制,最后粘贴到Sheet3的每个单元格,当然,只要选中你想要的区域,一次粘贴就够了。这样,相同的单元格都会显示为1

第二种:
当然是用VBA来完成了。你可以写一个MyIf过程,再在页面上放一个“对比”按钮,在“对比”按钮的Click事件中调用这个MyIf过程。
MyIf过程的主要任务就是在Sheet1表中选中区域探索和Sheet2表中相应区域相同的项,如果相同就将那个单元格改为红色的。
至于如何写这个VBA程序,你就研究研究吧,我现在暂时没时间。
我也希望后面的朋友能提供更好的方法。如果有空我也会写出来贴这儿。

希望能帮到你。
blestmail-yang@yahoo.com.cn