夜雨聆风学习资料网

ARTICLE · 1287217

FILTER函数在EXCEL版序时账中的应用

FILTER函数在EXCEL版序时账中的应用
EXCEL 查账2026.10

没有取数软件,查凭证犯难

序时账里查凭证

一条公式就够

FILTER · COUNTIFS · HSTACK · TRIMRANGE

EXCEL 查账实操

审计序时账

HI,大家好,我是晚风。

今天跟大家聊一聊,企业只能导出 EXCEL 版序时账 的时候,怎么用一条公式,把整张凭证连分录一起拉出来。

01

PART

取不了数,账还得看

THE PROBLEM · 场景

审计取数,通常靠取数软件直接调阅企业的序时账。但总有取不了数的时候,这时候只能退一步:让企业导一份 EXCEL 版序时账出来。

实操中, EXCEL 版序时账虽然也能用,但想在里头找一张凭证,还是挺麻烦的。

▲ AI生成的序时账示例

这时候 FILTER 就能发挥了。

▲ A、B 两列填日期和凭证号,D 列起自动带出整张凭证

比起传统的「打标识 + VLOOKUP」两步走,这样一条公式就够了。

02

PART

三个参数,只有第二个要动脑

THE MECHANISM · 原理

FILTER 取「过滤」之意,干的就是查询和筛选的活。Excel 2021 及以上版本、最新版 WPS 表格都能用。

FILTER只有三个参数:

...EXCEL

=FILTER(筛选区域,指定条件,[没有记录时返回的内容])

筛选区域

要从哪张表查数据。

指定条件

哪些行或列留下。这一格填的不是一句话,是一串 TRUE / FALSE。

没有记录时返回

兜底值。不写这一项,一条都没命中时整格直接报错。

三个参数里,真正要动脑的是第二个——它要的不是一句「条件」,而是一串 TRUE / FALSE。

举个例子,筛出与「供应商一」相关的凭证:

...EXCEL

=FILTER(A1:M14,G1:G14=A17)

▲ 辅助项为「供应商一」的凭证被整行带出

第二个参数 G1:G14=A17 算出来,其实是这样一列东西:

▲ N 列就是第二个参数的真身:TRUE 的行留下,FALSE 的跳过

看明白这一列,FILTER 就没有秘密了——它只是一行行对下来,见到 TRUE 就留,见到 FALSE 就过。

两个条件,怎么拼

「且」用乘号,「或」用加号。听着抽象,看两张图就明白。

AND

两个条件同时满足?乘

筛「供应商一」且制单人是 A 的凭证:

...EXCEL

=FILTER(A1:M14,(G1:G14=A17)*(M1:M14=B17))

▲ 两个条件相乘,14 行只剩 2 行

OR

只要满足一个?加

筛「供应商一」或制单人是 A 的凭证:

...EXCEL

=FILTER(A1:M14,(G1:G14=A17)+(M1:M14=B17))

▲ 两个条件相加,7 行全出,两类都留下

到底用乘还是用加,不用记口诀——问自己一句:这两个条件,是都得满足,还是满足一个就行。

03

PART

回到序时账:锁定一整张凭证

IN PRACTICE · 实战

前面的例子都在小表上打转。回到真正的序时账——原表一个字不动,查询放在另一张表里做。

▲ 原表保持完整,底部另建「查询」工作表

STEP 01

建一张条件表

查凭证,本质是用「月份(或日期)+ 凭证号」两个条件锁定一张凭证。新建工作表,A 列放日期、B 列放凭证号,可以一次填多组。

STEP 02

D1 输入公式

...EXCEL

=FILTER(序时账!A:.M,COUNTIFS(A:.A,序时账!B:.B,B:.B,序时账!C:.C))

▲ 条件表填了多组日期和凭证号,结果按凭证整段带出

✦ 这里为什么不用等值判断

一张凭证有好几行分录,条件表里又可以一次填多组。COUNTIFS 干的事,是对序时账的每一行问一句:你落在条件表里吗。多张凭证,一次全出。

列太多?用 HSTACK 裁掉不要的

序时账动辄十几列,主体账簿、币种、原币、制单人这些,查凭证时用不上。用 HSTACK 自定义要带出的列:

...EXCEL

=FILTER(HSTACK(序时账!B:.G,序时账!J:.J,序时账!L:.L),COUNTIFS(A:.A,序时账!B:.B,B:.B,序时账!C:.C))

▲ 主体账簿、币种、原币、制单人都被裁掉,只留查凭证用得上的列

公式里那个 . 是 TRIMRANGE 的语法糖,能自动裁剪引用区域,避免整列引用把公式拖慢。

!别直接抄

公式里的表名、日期列、凭证号列,都要换成你自己序时账的。列号差一位,结果就是一片空。

04

PART

FILTER 的常见错误

COMMON ERRORS · 排错

#SPILL!

结果区被挡住

FILTER 是动态数组,结果会向下溢出。公式刚敲进去就报 #SPILL!,多半是下方或右边有内容挡着。清空结果区,或把公式挪到其他区域。

#CALC!

没写第三参数

条件一条都没命中,却报 #CALC!——因为 FILTER 不支持空结果,第三参数补个 "" 或你喜欢的内容就可以了。

#NAME?

版本不支持

怎么改都报 #NAME?,先别怀疑公式,查版本。FILTER 要 Excel 2021 及以上,或新版 WPS。

#VALUE!

筛选区域行数和条件区域行数对不上

公式中,筛选区域的行数需要与条件区域的行数保持一致,否则就会报错。

附:示例文件下载

序时账示例.xlsx

既然看到这里了,如果觉得有用,随手点个赞、在看、转发三连吧。

点赞
在看
转发

THANKS FOR READING

回首页,搜索你想要的文档

在首页搜索框输入关键词,快速定位资料

文库首页搜索指引 立即搜索

相关学习资料