|
我附件上有2表,表1是伙食明细,表二是资料库,我想求得一个代码,就是在伙食明细表中,根据a3:a30的名称,在b3:b30在资料库中k列中把相应班级的数相加;在c3:c30则是根据资料库中当k列有数据的时候,在资料库中g列同班级的数相加并填在伙食明细表中的b3:b30,伙食明细表中的g3:g30则根据资料库中k列没有数据的时候,在资料库中g列同班级数相加并填在伙食明细的g3:g30之间,在伙食明细表中的h3:h30则把资料库中h列同班级的数相加,现在伙食明细表中的数据就是我所希望得到的结果。本来我是用公式来弄的,
=SUMIF(资料库!$B$4:$B$1939,伙食明细!$a3,资料库!$K$4:$K$1939),
=SUMPRODUCT((资料库!$B$4:$B$1939=伙食明细!$a3)*(资料库!$K$4:$K$1939<>"")*资料库!$G$4:$G$1939)
=SUMPRODUCT((资料库!$B$4:$B$1939=伙食明细!$a3)*(资料库!$K$4:$K$1939="")*资料库!$G$4:$G$1939)
=SUMIF(资料库!$B$4:$B$1939,伙食明细!$a3,资料库!$H$4:$H$1939)
由于我资料库中要经常删除一些数据,导致数据经常不准,所以必须得用vba来表示,本来我想把这些公式写在伙食明细表总,但
=SUMPRODUCT((资料库!$B$4:$B$1939=伙食明细!$a3)*(资料库!$K$4:$K$1939<>"")*资料库!$G$4:$G$1939)
=SUMPRODUCT((资料库!$B$4:$B$1939=伙食明细!$a3)*(资料库!$K$4:$K$1939="")*资料库!$G$4:$G$1939)用vba把这两个公式写在单元格的时候老提示定义错误,恳请高手指教。谢谢。
本帖最后由 zjdh 于 2011-11-7 10:25 编辑
洋洋大篇,看了都头晕,不过还是帮你用VBA搞定了,可不是用来写公式哦: {:912:}
伙食费.rar
(13.94 KB, 下载次数: 20)
|
|