EXCEL 工作表之间相互关联的问题

来源:百度知道 编辑:UC知道 时间:2024/06/03 18:04:31
EXCEL 工作表之间的关联,有点复杂
我想求助一下,因为平时需要做大量的发票,不同客户,以前的方法是在一个文件夹里,不同的工作簿是不同的发票号,不过这样有个很大的缺陷就是,需要查点东西的时候,就需要挨个表格打开,很麻烦,刚刚在论坛里看到了原来工作表是可以关联的,所以有以下这个想法,不知道哪个大侠可以教教我怎样才能变为现实,针对这个问题,我有两种设想来解决,解决了哪一种都可以。谢谢,详情如下:
第一种,每个客户只有一个工作簿,里面有两个工作表,第一个表为总表,含有这个客户的每次交易的详情,例如:
客户名 制单日期 柜数 费用 品名 合同号 提单号 发票号 核销单号
香港大通贸易1 80923 5 2450 4茶 DTSGG001A 8TAOKU0969 SGGDTS080923 113614553
香港大通贸易2 81018 3 2450 6茶 DTSGG002 QCSE0810045 SGGDTS081018 113620068
香港大通贸易3 81018 3 2450 6茶 DTSGG003 QCSE0810046 SGGDTS081019 113620069
然后,第二个工作表就是一个格式发票,相应的第一个工作总表中的用户信息会关联到这一个工作表中,就是假设,我要看香港大通贸易1的发票,我点击第一个工作总表中的香港大通贸易1,那么,香港大通贸易1的相应信息就会填充到第二个工作表中,自动生成一套发票,而不需要我在第二个工作表中再输入香港大通贸易1的相关信息了,同样,我点击香港大通贸易2,总表中的相关信息也会立即填充到工作表二中去,生成另一份发票。这样,我做一个新发票时,需要做的就

楼主,不管您在哪看到的信息,第一种方法和第二种方法,也看了楼主祝位说的。我认为都不可取。 你这种东西要用Word"邮件合并"功能, 邮件合并功能是利用WORD和EXCEL共同实现的。 举个现实中的例子给您,很多正规的工厂,会给员工工资清单(象个信封一样,无炭复写,猜开来可以详细工资项目的那种), 这种东西去银行也能见到,当去银行开卡的时候,您的卡密码是放在一个无炭复写的信封中), 这种东西就可以用"邮件合并"实现的。

原理是这样的: 拿工资单为列
1. 有Word做好一个人的表格模版
2. Excel上创建一个清单表,列上是各种工资项目,行上是人, 一个人占一行。
3. 回到Word上使用"邮件合并" , 工具栏上有一个专用于邮件合并(没开就将它找出来),指定数据源为2步中所说的Excel文档.
4. 在模板上指定每一个引用Excel表的字段的位置,
5. 指定好后, 就可以按每一条Excel记录生成一页Word文档了

虽然我特别喜欢Excel, 但我还是特别推荐您用Word的邮件合并, 因为那是标准作法。 您可以在网上搜搜看关于使用Word邮件合并的功能介绍。

回过头来说说您的Excel, 我觉着在Excel文件使用上是有个原则,能用一个Excel文件做的绝不用两个文件,能用一个工作表做的,绝不用两个表,能用一行表示的绝不用两行表示。

我认为完全可以用一个工作表,表示下所有的发票纪录。 为什么要一个客户一页? 为什么要一个发票好多行表示? 我觉着没必要。

第一种方法:
一、要在格式表里知道总表的数据行号
1、首先打开总表,在工具菜单里 宏 里点vba编辑器输入代码
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Sheets(2).Cells(1, 1) = Target.Row
End Sub
目的是把总表当前行号写到第2张格式表的第一个单元格里
2、也可以在格式表里用match函数查询行号
假设