转自EXCEL不加班

学员的案例:每个银行账户用一张表,然后将每个银行的余额自动引用到汇总表。

excel怎么制作现金日记账(EXCEL接近完美的现金日记账汇总表)(1)

原来A列的工作表名称,学员自己写的不规范,什么格式都有。卢子用一段简单的代码将工作表名称获取过来,这样后期统计就更简单。

excel怎么制作现金日记账(EXCEL接近完美的现金日记账汇总表)(2)

源代码:

Sub 提取工作表() Dim i% For i = 1 To Sheets.Count k = k 1 Cells(k, 1) = Sheets(i).Name NextEnd Sub

如果不懂得使用代码,请点开这篇文章:一键生成目录(完善版)

每个账户的余额,都是在E列,现在要根据最后一个日期,查找最后一行的余额。

excel怎么制作现金日记账(EXCEL接近完美的现金日记账汇总表)(3)

既然是现金日记账,记录的日期肯定是小于或者等于今天所在日期,也就是说可以用TODAY函数进行查找日期所对应的余额。

=LOOKUP(TODAY(),'建行(7777)'!A:E)

excel怎么制作现金日记账(EXCEL接近完美的现金日记账汇总表)(4)

关于引用工作表名称,以前写过很多文章,这里就简单的说明一下。这里有一个关键点,因为含有特殊符号,需要加单引号。

=LOOKUP(TODAY(),INDIRECT("'"&A2&"'!A:E"))

excel怎么制作现金日记账(EXCEL接近完美的现金日记账汇总表)(5)

,