共享编辑、跨文档引用的不便
Excel 的共享文档多人编辑、跨文档引用等功能似乎很美好,实际用下来很成问题。
- 首先共享文档虽然用约定按标注责任人的方式由不同的人编辑不同的行避免的多人同时编辑一行的冲突,但是这通常是个大文件,经常(大概是自己使用过滤时他人正在保存)卡住,而这会把整个Excel卡住,包括新建没存盘的文档都不能操作。
- 而跨文档引用,会在很多时候去刷新引用。即使当前文档不共享编辑,如果被引用的文档共享编辑也会卡住。
整个操作会变得不顺畅,甚至极端情况下 Excel 卡太久都崩溃了。减少被卡概率的方法就是用文件副本
- 共享文件复制到本机任意位置,虽然还是“共享”,但是只有自己一人编辑,就没有多人冲突了。最后记得把本机修改内容复制到原始的共享文档中,这是唯一可能被卡的时机,不过本机有最新数据,卡崩溃都没关系。
注: Excel 不能同时打开同名文件,内容复制前本机文件要改名 - 跨文档引用想法让引用失效(只是试图刷新时刷不出新数据,旧数据还在,不影响正常使用)。如果用了相对引用(比如同目录下的文件),复制到不同目录;如果用了绝对引用,那就断网(假如引用网络路径)或改被引用文件所在的目录名(假如这个目录在本机)。
顽固的名称、引用冲突
跨文档引用失效后还有遗留问题,保存前就会一直有下面的提示
除非点【全部确定】,否则每个冲突都要提示一次。下次保存又来一遍。
既然名称有错,用 CTRL+F3
打开名称管理对话框把里面的内容都删掉
结果还是有错
最后不得不对 Excel 文档直接动手了
- 假如原始文档叫
文档1.xlsx
(.xls 格式先另存为 .xlsx,最后反向另存为),先改名为文档1.zip
(不用怀疑,.xlsx 就是 zip 格式) - 用 winrar 之类整体解压,比如全到了
文档1\
子目录下 - 用任意文本编辑器打开
文档1\xl\workbook.xml
。下图显示,用的 Sublime Text 编辑器甚至因为一行内容太复杂而失去了高亮显示
- 找到
<definedNames>
和</definedNames>
这对标记进行分段,就清晰了
- 把上面的第4行彻底删掉,恢复原样起见把第2行结尾包括之后的换行都去掉,保存。
理论上有换行无影响——没有尝试 - 把整个
文档1\
下内容打包——不是对文档1
目录打包成 zip,否则多了一层路径 ;把文档1.zip
移到上级,改名为文档1.xlsx
。
自此大功告成,保存时没有烦人的提示了。
又:
凡是 Excel 文档出错而又难以找源头,都可以用 zip 法来进行文本全文件查找。前面对话框3中的 qqq1
估计可用文本查找精确定位进行修改;既然删 <defineName>
可以简单解决就不用逐个对应了。