乐于分享
好东西不私藏

文件版本太多不会找?教你用Excel公式一键抓取“上一版本”

文件版本太多不会找?教你用Excel公式一键抓取“上一版本”

分享一下我在工作中遇到的一个小问题以及它的解决方法。
我们的文件版本是按字母顺序排列的,比如 A、B、C、D……一直往下排。有时候我们需要快速找到某个版本的“上一版本”,比如 B 的上一个是 A,C 的上一个是 B,依此类推。我一开始想,这个用 Excel 公式应该就能轻松搞定。
对于单个字母的情况(A 到 Z),确实很简单。每个字母都有一个对应的 ASCII 码,比如大写字母 A 是 65,B 是 66,C 是 67,即code("A")=65,code("B")=66,code("C")=67……而且大小写字母的编码是不同的。所以我们可以用这个公式:
A~Z的版本,就可以通过这个公式搞定:=IF(A2="A","/",CHAR(CODE(A2)-1))

意思是:如果当前版本是 A,那上一版本就显示为“/”(表示没有更早的版本);否则,就把当前字母的 ASCII 码减 1,再转回字母,就得到了上一个版本。
这个方法对 A~Z 单字母版本非常管用。

但问题来了——如果版本号变成两位字母了呢?比如 AA、AB、AC……一直到 ZZ。这时候要怎么处理?
举个例子:
• AA 的上一版本应该是 Z(没错,从 AA 退回一位就是 Z)
• AB 的上一版本是 AA
• AC 的上一版本是 AB
• 以此类推……
这种情况就不能简单用上面的公式了,因为涉及到进位和退位的逻辑,类似于数字的减法,只不过用的是字母系统。
那么,这个问题该怎么解决呢?欢迎大家一起思考,也欢迎有经验的朋友留言分享你的做法。

有其他问题的朋友,欢迎下方留言,我们一起探讨。


用AI编程实现VBA自动化办公:我的旧版本文件智能归档实战分享