乐于分享
好东西不私藏

WPS里好好的图片,甲方为啥没看见?这个「神仙」工具一键自动解决!!

WPS里好好的图片,甲方为啥没看见?这个「神仙」工具一键自动解决!!
TOOL · 表格实战2026.08

图片明明就在文件里?

WPS有图,Excel却不认

一键让它现形

WPS私有图片 · 一键转Excel原生 · 命令行都不用

SpreadsheetCleaner

TOOL表格应急

📦 3 Parts + Conclusion

👉 滑动

PART 01

前记

劫难没到头

PART 02

谛听上线

第四位神仙

PART ///

写在最后

一键下载

前两仗打完,以为表格劫难到头了?

结果是图没了,公式还报错。

01

PART

🎯 前记

PROLOGUE · 劫难没到头

铺主原以为折腾完「别再发“带病”的Excel了!」「表格EVALUATE函数为什么失效了?」这两篇里面的工具,这辈子的表格劫难应该就算到头了。毕竟,SpreadsheetCleaner(谢必安、范无咎、钟馗三鬼捉垃圾)加上Excel_EvaluateRewriter(解决WPS和Excel的EVALUATE互撕),该扫的雷都扫得差不多了吧

可惜最近经历,让人到中年的铺主觉得自己还是太年轻了。最近,甲方爸爸过来跟铺主说,我同事给他过来的 xlsx 文件看不到照片让我处理一下。嗯?铺主警惕地打开一看,Excel确实没照片,却有一堆不起效的公式。铺主把截图发过去同事,同事天真地回了一句:“我这边有图啊,然后回了我一张截图.....” 铺主:MD,又要帮你们擦屁股

02

PART

🖼️ 看不见的图片

WPS与Excel的「各自为政」

WPS有个功能是“嵌入单元格图片”,用起来确实方便,图片老老实实待在单元格里,跟着行列一起动,不会乱跑。但问题是,这功能是WPS的私有实现Excel完全不认

WPS在背后做了什么呢?它把图片藏在一个叫 xl/cellimages.xml 的私有部件里,然后在单元格里塞了一个公式:_xlfn.DISPIMG("ID_xxx",1)。这个 DISPIMG 是WPS自己的函数,Excel字典里根本查无此词,所以打开后直接公式文本晾在那。

而Excel自己的原生图片体系叫 twoCellAnchor 浮动锚点,这是微软的正经格式,两套东西各说各话,井水不犯河水——苦的是我们这些两头都要打交道的人。

最讽刺的是什么?是图片其实还在文件里,只是Excel不知道怎么找。你把文件发给甲方领导,他打开一看,表格里没有图片,只有一堆报错公式,第一印象就是你发了个半成品。领导不会关心什么“WPS私有格式”这种技术理由,领导只会觉得你办事不牢。这种事摊上几次,铺主血压再高也扛不住。

03

PART

🛠️ 手动救不了

一张张改浮动?命都要没了

有人可能会说,那用WPS打开,把嵌入图片改成“浮动图片”不就行了吗?

是,行。两三张图片的小表格,你慢慢改,喝完一杯茶也就改完了。但铺主面对的是什么?经常是乙方发来的多个工作表的工程薄,每个表十几张图片,几十个表排成队等你处理。用WPS一张张表右键→“切换为浮动图片”→调整位置,搞完一个表血压已经上来了,搞完十个表铺主觉得这天没法过了。

这还不算什么,更离谱的是有些表格里,同一个图片被多个单元格引用,你改成浮动还得小心翼翼别重复劳动。总之,手改这条路,铺主试过,结论是:谁爱干爱干去!!

04

PART

🐕 谛听上线

能听万物,能辨真伪

被逼到墙角,只能继续写代码。铺主给 SpreadsheetCleaner 添了第四位神仙——谛听

谛听是地藏王菩萨的坐骑,能听万物、能辨善恶真伪。这里派它上场,专门负责“听见”WPS藏在暗处的图片,然后把它“辨”成Excel能看懂的真东西。

谛听的处理流程是这样的:

STEP 01

嗅探

扫描所有工作表,把藏在单元格里的 DISPIMG 公式全揪出来,解析出图片ID。

STEP 02

挖宝

从WPS私有部件 cellimages.xml 里,根据ID找到对应的图片数据,提取出来。

STEP 03

重塑

在原单元格位置生成Excel原生的 twoCellAnchor 浮动锚点,图片等比缩放、居中,保持原来的比例不变形。

STEP 04

清场

把单元格里那串 _xlfn.DISPIMG(...) 垃圾公式清掉,保留单元格样式,不破坏表格外观。

STEP 05

撕票

彻底移除 cellimages.xml 及其关系文件,连 [Content_Types].xml 和 workbook.xml.rels 里的引用都一并撕干净,不留一点WPS私有的痕迹。

STEP 06

去重

多个单元格引用同一张图片时,自动复用同一个媒体部件,不重复存储,避免文件体积膨胀。

最省心的是,非WPS文件自动跳过,完全零开销,不怕误伤正常表格。

05

PART

👻 地府四鬼

SpreadsheetCleaner 全家桶

现在 SpreadsheetCleaner 的地府编制算是配齐了:

谢必安(白无常)

专勾冗余样式,不留一个废项。

范无咎(黑无常)

专锁失效名称,清扫索引垃圾。

钟馗

专砍无数据但有格式的单元格,斩断体积膨胀。

谛听(新入职)

专辨WPS私有图片,转换为Excel原生格式。

四位神仙联动,处理文件时先由谛听转换图片,再由谢必安、范无咎、钟馗清理垃圾,一条龙服务,甲方打开你的表格,终于能正常看见图了

06

PART

💻 用法照旧

右键搞定,老规矩

安装和使用方式跟之前完全一样,没有新门槛:

把压缩包解压到一个文件夹,创建快捷方式到[%AppData%\Microsoft\Windows\SendTo] 。

然后选中要处理的表格(可多选甚至选文件夹),右键 → 发送到 → SpreadsheetCleaner,弹出窗口后自动处理。多文件批量处理、多线程提速、原文件自动备份为 .bak,都是老规矩。

什么打开GUI、拖文件到exe、写命令行的,太累了,怎么快怎么来。

///

LAST

✏️ 写在最后

EPILOGUE · 一键下载

铺主发现,同事的创造力真的是无穷无尽的。你以为解决了垃圾样式和EVALUATE就天下太平,结果他们立刻在“嵌入图片”上给你整新活。逼得铺主地府神仙越请越多,四鬼齐聚一堂,不知道的还以为在开阴间年会。

不过话说回来,这套东西折腾下来,至少以后收到乙方的WPS表格,铺主不用再一张一张手动改图片了。右键一发,谛听出马,甲方终于能看见图了,领导也终于不用用那种“你发了个半成品”的眼神看着我了。

这个项目的最新版本已经发布在 Gitee,包含谛听的完整功能,请留意文章最后:

有需要的老铁可以直接下载,源码也公开在里面,欢迎Star。如果还有什么问题或者新需求,欢迎在评论区留言,后台也可以联系到铺主

既然看到这里了,如果觉得有用,随手点个赞、在看、转发三连吧你们的点赞和评论对我有非常大的帮助

📥下载地址:https://gitee.com/ginkdu/spreadsheet-cleaner/releases