Word中的明细账单

时间:2009-10-20 20:49:56

标签: ms-word mailmerge

我想为非营利组织生成明细账单作为Word邮件合并。

现在,源数据以类似数据透视表的结构存储在Excel中(这不是我的想法),每个客户的每个项目类型有两个单元格(欠款和付费)。 (每个客户都有一行,每个项目类型有两列)。现有数据属于这种结构,但是如果有一种方法可以自动将其转换为更好的数据,我会接受这些想法。

我目前有一个由Word宏生成的Word邮件合并文档,它为每对列(项类型)写入Word IF字段代码。 (并非所有客户都拥有所有项目类型,因此我需要IF字段来排除每个客户不欠的项目。)

问题是只有我知道如何操作这个系统,我不再有时间自己生成所有账单。

理想情况下,我会编写自己的结算应用程序(这也可以解决许多其他问题),但我也没有时间。

有没有办法(合理地快速)建立一个系统,允许技术水平较低的人在没有我的情况下完成所有计费?

我们研究过QuickBooks,但它无法导入现有的交易。

2 个答案:

答案 0 :(得分:1)

这是我想到的一个解决方案:

将Excel数据操作为非旋转形式,每个事务占一行(每个客户每个项目,或当前结构中的每对单元格)。实际上我已经在尝试将事务导入QuickBooks时失败了。

每一行都会变成帐单中的一个项目(而不是当前的,旋转的形式,每行变成一个包含许多项目的整个页面)

然后,创建一个Word合并文档,检查当前行是否是另一个客户的第一行,如果是,则包括两个(非常大)的帐单的整个文本(而不是项目) )IF域代码。

所有行都会在账单中生成一个项目 每个客户的最后一行将跟随旧客户的文本的后半部分(项目后面的部分) 每个客户的第一行将在其前面加上新客户的文本的前半部分(项目前的部分)。
处理第一个和最后一个客户需要两个IF。

我必须在电子表格中添加一个公式列,告诉我是否要插入前缀,后缀或两者,因为这在Word中是不可能的。 (你不能偷看下一张唱片)

合并生成器仍然是一个复杂的怪物,但它永远不需要改变;将从源数据中选取新项类型。 (与当前的合并生成器不同,后者需要为每个新项类型生成新的宏生成的字段代码)。即便如此,我可能会制作一个宏来生成它,以防文本发生变化。 (在域代码中编辑文本非常烦人)。

答案 1 :(得分:0)

Word和Excel都内置了VBA,如果你使用这些,那么你不仅限于你能做什么。这种类型的应用程序确实应该从数据库(Access)驱动,该数据库将生成逐项清单,添加序言,以及在逐项列表之后的底部总计和杂项。

但是,如果您需要坚持使用Excel数据,那么将Excel视为数据库,在Excel中编写VBA代码以生成帐单,然后在Excel(VBA)中汇编word文档或将其放入一种工作表格式,只需要从Word模板中完成全部工作即可完成。