为什么操作宏表函数或vba后的Excel文件发送给他人以后有数据缺失?
作者:E图表述来源:部落窝教育发布时间:2021-06-02 10:40:12点击:6281
编按:
在EXCEL工作中,文件后缀名是很多人常常忽略的存在。但是,如果不能精准地掌握它,它就会变成一个重大工作隐患。例如,当保存EXCEL文件时,选择了错误的后缀名进行保存,你的文件(特别是含有宏或VBA)数据就有可能缺失或无法正常运行显示,前期工作功亏一篑……
【前言】
用了这么久的EXCEL,如果问大家EXCEL的后缀名是什么?大家能回答出来吗,或者说你能说出几种呢?同学们肯定想不到EXCEL不同后缀的文件也有很多特定功能在里面的。今天我们就一起来看看EXCEL的后缀名,和它们不同的意义吧!
【正文】
当我们有一张工作薄需要保存的时候,按F12快捷键,就会弹出“另存为”窗口,然后点开“保存类型”下拉菜单,在这里就可以看到EXCEL被保存的文件格式类型,下图,以EXCEL2016版本为例:
擅于使用这些文件类型,让一个文件在不同的使用环境中起到不同的功能,有着很重要的作用。
►►►.XLSX格式
这是从EXCEL2007版面市后才出现的后缀名,也是现在大部分EXCEL(因为大部分人都已经使用07版以上的版本了)文件保存后的默认后缀名。设计此后缀,主要是为了和其他电子表格软件可以兼容,例如Apple Numbers、Google Docs和OpenOffice。
►►►.XLSM格式
这个格式也是从EXCEL2007版开始的后缀名称——“启用宏的工作薄”。如果在EXCEL2007文件中使用了宏代码、宏表函数,这时我们就要把电子表格文档保存为.XLSM格式的文件,否则关于宏的内容很容易就会消失。
笔者E图表述认为,微软的这次改进是有着相当重大的意义的。在笔者使用EXCEL2003版的时候,无论是否使用“宏表函数或者使用VBA代码”,文件的后缀名都是一样的。试想:如果别有用心的人,将一段恶意代码放到电子文档的OPEN事件中,再起一个非常有诱惑力的工作薄名称。
一旦打开这样的文件,后果不堪设想,所以现在就可以通过后缀来判断这个文件是不是带宏,如果不是正当途径的外来表,大家可以自己判断是否存在潜在的危险。
►►►.XLSB格式
“二进制工作薄”。当大家的数据记录较多,或者使用了大量的易失函数(尤其是大量的统计函数)后,工作薄的容量就会很大,有时会有几十MB、上百MB。打开或者运行这种工作薄会变的很慢,此时大家就可以将文件另存为.XLSB文件,可以起到增加运行速度、减少容量大小的作用。
如果文件中有宏,也可以保存为这个格式,宏代码依然可用。
►►►.XLS格式
这个就不多说了,微软对于版本的向下兼容性一直做得很好。这就是97-2003版本的文件扩展名。现在很多的系统软件导出EXCEL文件时,依然采用这个后缀格式,就是为了兼容更多的电子表格软件。但是有一点要注意,当你的系统导出EXCEL.XLS格式时,最大的记录行数只有65535行,如果系统中导出数据大于这个值时,一定要分批导出(例如按时间段分几次导出),否则数据不全!
►►►.CSV格式
Comma-Separated Values,一种纯文本文件,将记录条用逗号或者其他分隔符间隔后,形成一个字符串,其主要作用于数据交互转换的过程中。例如:大家需要将EXCEL的数据内容上传到某个网站,那么这个网站上就可能需要.CSV格式的文件,大家此时就可以将文件另存为此类格式。
↑↑↑模拟另存为的.csv格式,以逗号间隔的字符串
笔者用的是EXCEL2016版,所以有两种.CSV格式,CSV UTF-8和CSV;在07版的EXCEL另存为中只有CSV格式,这是因为电脑字符编码不一样。在以前微软只选择了支持ANSI和UNICODE编码,然后再通过UTF转换格式,而现在可以直接保存为UTF-8格式,方便使用。
►►►.XLTX .XLTM .XLT格式
这三个后缀名的文件格式,笔者就放在一起讲了。同学们仔细看看它们和刚才讲的有什么联系吗?
将S改成T,就可以将文件改成一个“模板格式”,下面举一个例子:
新建一个文件,把它另存为.XLTX文件,此时大家应该注意到,默认的保存路径就会自动改变。
点击保存后,再依次用鼠标点击“打开”-“新建”-“个人模板”,就可以调用这个模板了。
这就是刚才建立的模板,同时大家也可以把这个文件传给别人使用,接受人将这个文件放到本地的“自定义 OFFICE 模板”中,就可以从接受的本地电脑中,使用这个模板了。
►►►.XLAM .XLA格式
这两个格式是“加载宏”的格式。例如这里有一个用VBA写的自定义函数:
在工作表中任意单元格内输入函数=SC(),就会显示这个工作薄中创建了几张工作表。此时大家可以按F12快捷键,另存为.XLAM格式的文件。
注意一点:此时保存路径会自动跳转到本地微软根目录下的ADDIN(外接程序)文件夹下。
保存路径可以手工改到别的地方。对于不熟悉加载宏的同学来说,一定不要保存在这个目录下,会有“提示加载不成功”而打不开工作薄的危险。
当保存后,如果大家需要在其他的本地或异地工作薄使用时,有一个很简单的方法。如下:
打开其他工作薄,将.XLAM文件拖拽进去(工作表界面不会看到任何反应,但是在VBE界面就会加载了这个文件中的代码),然后代码或者自定义函数就可以使用了。
使用.XLAM格式的文件时需要注意几点:
1.在代码中一定要写清代码操作的文件为ACTIVEWORKBOOK文件。
2.如果使用自定义函数,并保存关闭后,大家会发现这个函数会有一个外部链接的地址,指向.XLAM加载宏文件;如果没有拖拽打开这个文件,更新后,此函数为#NAME报错。(大家可以在运行后,将其保存为值即可。)
加载宏是一个很高深的技巧,如果大家感兴趣,可以到公众号中留言,我们后期可以安排此类内容再做深论。
【编后语】
笔者还有几个格式的文件没有给大家介绍,是因为那些内容实在是用到的机会较少,都是一些和其他数据类型互通兼容的文件格式。不过及此,大家也就知道,EXCEL对于数据格式还是可以达到很高的兼容性,可以和很多现在很流行的软件互通。
好了,文章就先到这里,希望能给大家带来一些启迪。
本文配套的练习课件请加入QQ群:902294808下载。
做Excel高手,快速提升工作效率,部落窝教育《一周Excel直通车》视频和《Excel极速贯通班》直播课全心为你!
扫下方二维码关注公众号,可随时随地学习Excel:
相关推荐:
13个实用Excel文件技巧看这里!未保存的Excel文件去哪里找回?
版权申明:
本文作者E图表述;同时部落窝教育享有专有使用权。若需转载请联系部落窝教育。