|
本帖最后由 lixiangjypx 于 2017-4-24 10:01 编辑
这个公式是dgerwin 老师给的!在这里先感谢他(她)!
如果各位老师可以用VBA实现的话,麻烦也给一个VBA吧!行数多了运行起来会卡,谢谢了!
公式我第一次使用时,账簿有227行,这时的公式的检验结果与凭证内容是相符的。
可第二次增加到603行时公式计算出来的结果有一部分和凭证内容不符了,计算结果本是“OK“的,却显示了”借贷同在“或"非全收付,待查"。这603行中包括了第一次使用时的227行,这227行的计算结果有的也不符,和第一次227行的结果不一样。
当我用另外一个公司的账簿1539行检验时,行数越多,计算的结果与凭证内容不符的就越多,经过仔细的核对,1539行的账簿当行数减少到159行时,计算结果全部正确!
请教下各位老师和大神,这公式最多能达到多少行?当行数超过时该怎样改公式?
谢谢各位老师和大神!知道的,请你指点下,谢谢了!
在227的表格里使用:
IF(SUMPRODUCT(($D$2:$D$227=D2)*(LEFT($G$2:$G$227,3)="100")*($K$2:$K$227))>0,IF(SUMPRODUCT(($D$2:$D$227=D2)*((LEFT($G$2:$G$227,3))="100")*($L$2:$L$227))>0,"借贷同在",IF(SUMPRODUCT(($D$2:$D$227=D2)*(LEFT($G$2:$G$227,3)="100")*($K$2:$K$227))=SUMPRODUCT(($D$2:$D$227=D2)*(LEFT($G$2:$G$227,3)<>"100")*($L$2:$L$227)),"OK","非全收付,待查")),IF(SUMPRODUCT(($D$2:$D$227=D2)*((LEFT($G$2:$G$227,3))="100")*($L$2:$L$227))>0,IF(SUMPRODUCT(($D$2:$D$227=D2)*((LEFT($G$2:$G$227,3))="100")*($L$2:$L$227))=SUMPRODUCT(($D$2:$D$227=D2)*(LEFT($G$2:$G$227,3)<>"100")*($K$2:$K$227)),"OK","非全收付,待查"),""))
在603表格里使用
IF(SUMPRODUCT(($D$2:$D$603=D2)*(LEFT($G$2:$G$603,3)="100")*($K$2:$K$603))>0,IF(SUMPRODUCT(($D$2:$D$603=D2)*((LEFT($G$2:$G$603,3))="100")*($L$2:$L$603))>0,"借贷同在",IF(SUMPRODUCT(($D$2:$D$603=D2)*(LEFT($G$2:$G$603,3)="100")*($K$2:$K$603))=SUMPRODUCT(($D$2:$D$603=D2)*(LEFT($G$2:$G$603,3)<>"100")*($L$2:$L$603)),"OK","非全收付,待查")),IF(SUMPRODUCT(($D$2:$D$603=D2)*((LEFT($G$2:$G$603,3))="100")*($L$2:$L$603))>0,IF(SUMPRODUCT(($D$2:$D$603=D2)*((LEFT($G$2:$G$603,3))="100")*($L$2:$L$603))=SUMPRODUCT(($D$2:$D$603=D2)*(LEFT($G$2:$G$603,3)<>"100")*($K$2:$K$603)),"OK","非全收付,待查"),""))
1593的公式只是把603改成1593,附件里有。
|
|