如何让两个EXCEL表格中的部分数据同步,如下

比如销售表格上的服务方式有销售和维修,另一个表是售后表格,如何让销售表格上的维修项同步到售后的表格中。

表格2中A1输入=
表格1中输入!$A1
这个方法会全部同步或一个一个选择同步比较麻烦,
我只要销售表格中的维修项同步到售后表格中。
VLOOKUP函数不知道行不行,但我不会用,请高手赐教可行方法!谢谢!

1.在EXCEL底部的sheet1标签上点鼠标右键,选"查看代码",调出sheet1的代码窗口.

2.将下面代码粘贴进去:

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = "$A$1" Then Sheets("sheet2").Range("a1") = Target

End Sub

3.同样,回到EXCEL窗口,在sheet2表的底部标签上用右键"查看代码"

4.调出sheet2的代码窗口,输入下面代码:

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = "$A$1" Then Sheets("sheet1").Range("a1") = Target

End Sub

5.

完成

回到EXCEL窗口后就可以使用了.

可以看到,这两段代码基本相同,不同的地方是代码的第二行的中间部分,分别引用了对方的工作表名字.

代码的含义是,当工作表(sheet1或sheet2)中的内容改变时,并且改变的单元格是A1单元格时,代码自动将改变的内容写入到另一个工作表的A1单元格.

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-12-16
以你现在的例子
售后这张表的a2单元格输入
=if(row(a1)>countif(销售!$E:$e,"维修"),""index(销售!a:a,small(if(销售!$E$1:$E$9="维修",row(a$1:a$9),4^8),row(a1)))&"")
公式是数组公式,输入后,不能回车,需要按ctrl+shift+回车,然后公式右拉到F2
然后中选中a2:f2
下拉填充公式。
这是适用于你的现在的例子,如果销售表数据会增加,那将公式中的数字9,修改为你实际最多可以达到的行数。追问

提示公式有问题,您再帮我看看哦

追答

=if(row(a1)>countif(销售!$E:$e,"维修"),"",index(销售!a:a,small(if(销售!$E$1:$E$9="维修",row(a$1:a$9),4^8),row(a1)))&"")

试一下这个。刚才少了个逗号

追问

试了下没反应
(公式是数组公式,输入后,不能回车,需要按ctrl+shift+回车,然后公式右拉到F2
然后中选中a2:f2)
这个名明白,售后的没有F2,a2:f2是哪个里面的?

追答

这个不重要,你可以将f2的公式复制到E2,
因二表结构不同,我那样讲,只是为了公式的拖拉方便。
刚测试通过,没问题。
你确定你按了ctrl+shift+回车?如果是这样按的,公式单元格在编辑栏来看,会有前后的{}产生。

本回答被提问者采纳
第2个回答  2013-04-17
公式不行吗。=就可以同步啊。
相似回答