我正在准备银行对帐文件,以使负值与正值匹配。。在下表中,有一些负值需要与正值对帐/匹配。例如A4 (5076)
是负值A2+A6+A8 (-5076)
的总和,两者相互对帐并为零。我想要将所有正值与负值调和的Excel编码。请帮助
A B
1 -5425
2 -4125
3 -2632
4 5076
5 -222
6 -906
7 8279
8 -45
9 -254
10 -542
答案 0 :(得分:0)
我认为这将太大而无法放入评论中,并且可能会变成答案,因此我将其发布为答案。
我在开始时看到了几个问题:
{(a, +5),
(b, +4),
(c, -1),
(d, -1),
(e, -2),
(f, -2),
(g, -3)}
很明显,可以将其调和为
[{(a,+5), (c,-1), (d,-1), (g,-3)},
{(b,+4), (e,-2), (f,-2) }]
或为
[{(a,+5), (c,-1), (e,-2), (f,-2)},
{(b,+4), (d,-1), (g,-3) }]
但不清楚区别是否重要。
最琐碎的情况是,如果对问题1的回答是“不,没有限制”,而对问题2的回答是“有效输入列表的所有行将始终协调一致”,那么对问题的回答#3是“没有关系”。
在这种情况下,允许作为包含所有行的单个对帐组。
假设这不是您想要的,则必须更清楚地阐明您想要的内容。
如果问题3的答案是看似等效的对帐组之间的差异确实重要,那么您的解决方案将必须考虑尚未显示的信息。尽管{(b,+4), (e,-2), (f,-2)}
和{(b,+4), (d,-1), (g,-3)}
之间可能会有差异,但目前尚无任何方法可以使它们比另一种更好。
很可能您会遇到注释中指出的计算限制。我不认为该任务是不可能,但我会强烈建议使用Excel或VBA之外的其他方法。
很多人会尝试使用Python做到这一点,这很好。在我看来,Haskell会擅长这种事情。如果性能是一个问题,那么像C这样的低级语言虽然不一定会更快,但可能更易于优化。