Excel 工资条明细表怎么隐藏的

2025 年 12 月 2 日
 JadePenG

媳妇单位发了一个查询工资条明细的 Excel 表格, 里面是输入身份证号码, 下面就可以动态的查询出来自己的工资明细.

Excel 公式: =VLOOKUP(D1,'./[工资发放表.xls]查询表'!$C$1:$R$65536,3,FALSE)

然后我根据 Excel 具体的公式查, 怎么也查不到引入的外部 工资发放表.xls 文件, 难道是 Excel 自己缓存了? 可是整个文件的大小又只有 39.3KB

然后我根据网上的教程做, 如果引入的外部源数据不存在, 压根没法查出来数据.

这激起我的兴趣了, 有没有大佬指点下这怎么做到的. 有没有什么方式看到所有的明细数据.

1737 次点击
所在节点    问与答
7 条回复
106npo
2025 年 12 月 2 日
='./[工资发放表.xls]查询表'!A1 然后填充看看
hellodigua
2025 年 12 月 2 日
断网查询试试,看看是不是走接口查询的
geelaw
2025 年 12 月 2 日
答案就在文档里

https://support.microsoft.com/en-us/office/manage-workbook-links-fcbf4576-3aab-4029-ba25-54313a532ff1

链接工作簿是有缓存的,并且可以选择不提示用户刷新缓存。文件很小不代表缓存不到位:首先被查询表是复合文档格式( xls ),很可能查询工具表本身也是复合文档,这种的存储效率很高;如果查询工具表是 XML 格式( xlsx ),那它自带 ZIP ,可能有压缩。

如果是 XML 格式,直接解压缩就可以看到缓存的数据。

建议提示单位,而且无论如何实现,允许用身份证号码直接查询工资明细也是比较严重的信息安全问题。有功夫研究自动查询公式,不如一步到位直接自动生成所有人的工资条( VBA/PowerShell 访问 Excel COM 都很方便)。
NewYear
2025 年 12 月 2 日
有钻研精神是好的。


但是技术人员不要去碰工资表,有害无益。
JadePenG
2025 年 12 月 3 日
@106npo 根据这个方式好像没有反应

@hellodigua 没有走接口,可以明确的看到确实是读取的 excel 文件的数据

@NewYear 哈哈哈 当然,被这个方式惊讶到了 探索一下
JadePenG
2025 年 12 月 3 日
@geelaw 感谢大佬,提供了很有用的信息,而且还学到了很多。原来 XLSX 的文件是基于 XML 格式生成的。

不过还是没有明白他的这个缓存居然可以完全在 excel 表格中找不到,并且数据还能查出来是怎么做到的。

单位的这种方式确实不安全,我们会进行提醒的。
geelaw
2025 年 12 月 3 日
@JadePenG #6 “完全在 Excel 表格中找不到”是单纯因为 Excel 没有实现查看缓存的功能,无责任推理:缓存只是一种提升性能的工具,常见场景是被链接表在内网的共享文件夹或者企业私有云里面,链接工作簿可能在各种位置(包括跨国公司的另一个国家的内网里,或者电脑本地),而每次查询都要访问云实在太慢了,或者用户可能出差,笔记本不在内网,或者需要很慢的 VPN ,所以需要缓存让数据在链接工作簿里存在;缓存不是面向最终用户的功能,因此没有必要让最终用户可以查看,而要实现可以查看需要费力气,所以不实现。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1176466

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX