上午新建excel工作表时,发现新建完之后居然打不开
提示:
因为文件格式或文件扩展名无效。请确定文件未损坏,并且文件扩展名与文件的格式匹配。
尼玛这坑爹的,难道我的Excel坏了??
排查问题之后发现 只有新建“Microsoft Excel 工作表”时会出现这种问题,新建“Word”、“PPT”、“Microsoft Excel 97-2003 工作表”都没有问题,单独打开Excel在里边选择新建工作表也没问题,独独右键新建的文件出问题。
于是开始求助度娘,一看,呵!出现过这种问题的哥们还挺多。。。甚感欣慰,开始按照网上的办法各种试。。。然后就是各种不行
比如修改注册表的HKEY_CLASSES_ROOT\Excel.Sheet.12\shell\Open\command
比如修改Excel的加载项
比如修改Excel的模板
....
然而并没有什么卵用
于是开始使用终极大招!重装+重启
然后发现也是没有什么卵用。。。。
好吧 网上的都靠不住,关键时刻还是得看自己啊
仔细分析了一遍,打开Excel可以新建工作表,也可以打开其他的.xlsx文件,说明软件本身木有问题,而且新建“Microsoft Excel 97-2003 工作表”也可以正常打开,这俩的区别就是新老版本的模板的区别,但是肯定不会是因为新老版本不兼容的原因(因为之前百度的时候网上有哥们说过这种问题的解决办法,照着改了也是没有什么卵用),那就只剩下新建文件时选择模板的问题了!!!
问题找到,下面开始找解决办法,但是试了各种自定义模板还是没有解决。。。闹心
真是闹心。
不过幸运女神还是木有抛弃俺,就在俺要放弃的时候,忽然看见微软官网有人问这个问题,链接如下:
office2016无法打开鼠标右键新建excel文件,其他的表格都可以打开
里边有人说了这么一个办法(当然这个办法还是不行):
1.按WIN+R,运行regedit,打开注册表编辑器
2.然后在HKEY_CLASSES_ROOT下找到.xls和.xlsx,右键单击新建-项,命名为shellNew,然后在建立的项中新建-字符串,命名为NullFile,值为空
然后我就按照这个开始新建...,就在我新建.xlsx这项的时候,忽然发现已经有shellNew了,不过路径和他说的不一样,但是里边的FileName的值倒是全部指向了Office的模板目录
点开看看,发现.xls下边的ShellNew的FileName的值是之前用的WPS的,可是WPS已经卸载了,而且出问题的是*.xlsx,又不是*.xls,那就先不管它
然后又打开.xlsx下边的ET.Xls.6下边的ShellNew,发现这里的FileName的值也是WPS的,放的是之前WPS的模板路径,将路径复制到文件资源管理器打开,发现找不到路径。这个时候心里已经大致知道咋回事了。然后打开Excel.Sheet.12下边的ShellNew,老样子,赋值FileName的值,发现打开了,打开的是一个空白的Excel文件,文件名:excel12.xlsx,这个应该就是Excel的模板文件了,将这个路径复制粘贴到ET.Xls.6下边的ShellNew的FileName,将原来的值修改为“C:\Program Files (x86)\Microsoft Office\Root\VFS\Windows\ShellNew\excel12.xlsx”,OK,返回桌面,右键>新建>Microsoft Excel 工作表 ,双击顺利打开!!!
原因就是之前新建“Microsoft Excel 工作表”的时候,模板是用的WPS的模板,但是这个模板已经找不到了,所以新建的工作表就有问题,导致Excel打不开。
解决办法:修改上图ET.Xls.6 > ShellNew > FileName的值,修改为Excel自己的模板路径,搞定收工
转载请注明:李锋镝的个人博客>> https://www.lifengdi.com/archives/article/139