文件作為計算機系統(tǒng)存儲數(shù)據(jù)信息的主要方式之一,不同的軟件采用各自獨特的編碼和結(jié)構(gòu)來存儲軟件的使用或處理后的數(shù)據(jù),而采用這種編碼的數(shù)據(jù)集合封裝成一個小的整體就叫文件,采用特定編碼和數(shù)據(jù)結(jié)構(gòu)叫文件格式或文件類型,而將某些類型的文件規(guī)定用來干什么的標(biāo)準(zhǔn)叫文件系統(tǒng),不同的操作的系統(tǒng)指定的文件標(biāo)準(zhǔn)的也不相同,比如window系統(tǒng)的exe為可運行的文件,而蘋果的系統(tǒng)則是dmg。相應(yīng)的excel也有自己的一套文件標(biāo)準(zhǔn),今天就來說說4種常用的文件格式:數(shù)據(jù)文件,宏文件,模板文件。
這個是我們最常用的文件格式xlsx(2007版之后的文件格式),xls則是2003版之前采用的文件,簡單的對比一下兩者的變化:
存儲數(shù)據(jù)量:xls:256(ff)列*65536行,xlsx:386(XFD)*1048576(行)
如果你把xlsx文件的數(shù)據(jù)存儲成xls文件,就可能會出現(xiàn)超出部分被截取掉,強烈建議使用xlsx文件格式,哪你如果我的軟件版本是2003,怎么打開xlsx文件呢?簡單,下載一個2007兼容包就可以了,不過現(xiàn)在官方已經(jīng)停止提供2007版的下載啦。將xls轉(zhuǎn)化成xlsx就簡單多了,只需將文件在新版本的軟件中打開,選擇另存為,選擇xlsx文件類型,只是部分樣式可能會丟失,需要重新調(diào)整。
如何鑒別的你選擇的文件是xls還是xlsx呢?
1. 高版本中打開文件,然后按ctrl + ?就能查看總列數(shù),如果看到最右側(cè)列列號為FF,文件就是xls,如果是XFD就是xlsx文件;
2. 可以通過系統(tǒng)的顯示隱藏擴展名的方法直接查看文件類型,不同的版本的操作系統(tǒng)方法也不太一樣,匯總了window7,window8和window10操作步驟如下:
不同系統(tǒng)顯示/隱藏擴展名操作方法
文件使用的編碼格式不同:xls:將表格文件的多部分用二進(jìn)制編碼存儲一個混合文件,不能單獨查看,xlsx:基于xml存儲數(shù)據(jù)結(jié)構(gòu)與其他的文件用zip壓縮制成,用zip反解壓后,并可以單獨查看每個部分的數(shù)據(jù)(如果設(shè)置的打開密碼除外);
雖然xls文件不容易損害,一旦部分損壞導(dǎo)致整個文件信息丟失,當(dāng)然你可以借助工具恢復(fù)找回來,而xlsx文件就不同,它即便部分損壞,其他部分的數(shù)據(jù)相對獨立,文件仍舊可以打開,哪我們就來一起拆解一下xlsx,看看它的內(nèi)部到底是有什么組成的吧,選擇了一個既有圖片,顏色豐富和公式的文件,其實文件包含的多少并不影響文件的結(jié)構(gòu),只是對應(yīng)的文件部分?jǐn)?shù)據(jù)沒有而已。
拆解xlsx文件結(jié)構(gòu):找到文件將后綴名改為.zip,然后解壓后(提示:如果無法查看文件擴展名,可按上圖操作)且文件夾和文件名相同,打開文件夾,分為三大塊內(nèi)容,rels,docProps,xl等三個文件夾和EcontentType.xml文件:
rels:各種數(shù)據(jù)文件的關(guān)系信息文件夾
docProps:文件的屬性信息文件夾
xl:文件主要的數(shù)據(jù)和各部分的數(shù)據(jù)存儲的文件夾
EcontentType.xml:包含文件構(gòu)成的引用部分信息和相應(yīng)的路徑
在xl文件夾中的文件目錄:
drawing:對應(yīng)插入的圖案,藝術(shù)字體,圖表的數(shù)據(jù)目錄;
media:媒體文件家,包括圖片,視頻,音頻等文件信息;
printeSetting:打印設(shè)置的配置信息存儲目錄;
theme:主題信息目錄;
worksheets:工作表的數(shù)據(jù)信息目錄,
還有三個文件:
cachain.xml(涉及到計算的單元數(shù)據(jù)),
style.xml(整個表格個的樣式信息)
workbook.xml(文件路徑已經(jīng)文件打開窗口的起始位置)
里面所有的數(shù)據(jù)文件都采用xml,而xml的實質(zhì)就是帶有固定格式的文本文檔,你可能見過圖片文件損壞,你見過音頻文件損壞,但你見過文本損壞的嗎?它的穩(wěn)定性是不言而喻的。
文件安全性:xls文件設(shè)置了打開密碼(高強度密碼),照樣通過工具不到3秒就能清除,xlsx設(shè)置了打開密碼只能暴力破解,至于破解的速度就取決于密碼的強度了
簡單介紹一下暴力破解密碼的方法:
原理簡單就是用密碼字典挨個去嘗試,如破解失敗,就換個字典再試,直到成功。
你要密碼字典是什么?
密碼字典就是通過一些規(guī)律組合成的密碼集合。
這種組合能破解成功嗎?
是你太高估大家的密碼意識,據(jù)2017年網(wǎng)絡(luò)數(shù)據(jù)統(tǒng)計,使用最多的密碼前10位,都是純數(shù)字的8-10位的數(shù)字,什么123456789,111111111,這種類似占了8個席位,剩下的有password,aaaaaaaaaa。如果你的密碼也是這么設(shè)置的,建議趕緊改吧。
分享我設(shè)置密碼的思路:
1.比較熟悉的事物,用名稱字母或英文單詞,可首字母大寫或中間的字母大寫,
2.加上特別數(shù)字或日期,盡量別用自己的生日或家屬的生日,少些關(guān)聯(lián)性
3.密碼長度為10-12就行,
就現(xiàn)在的計算機的發(fā)展速度,破解密碼只是時間和值不值的去破解的事,咱們?nèi)粘@习傩找膊惶赡芙佑|安全級別特高的密碼,我做過的文檔基本都沒有密碼,因為內(nèi)容又不是什么機密,設(shè)置完密碼后會很麻煩,總結(jié)三個字:不值得。
如果你遇到xlsx文件設(shè)置防止修改的密碼怎么辦?
手動清除它:我用的2016版本生成的文件,熟練后操作不超過1分鐘,具體操作步驟:
1.復(fù)制粘貼文件,將文件擴展名xlsx修改rar或zip回車,
2.雙擊打開壓縮包,在窗找到xl\worksheets\工作表名.xml拖拽到外面,
3.右鍵用記事本打開,ctrl+f搜索password,點擊查找下一個,就找到
<sheetProtection password="D92E" sheet="1" objects="1" scenarios="1"/>
不過不用管密碼是什么,將整個標(biāo)簽的內(nèi)容刪除保存后
4.直接將拖出來的文件再拖回解壓窗口,彈出壓縮文件的窗口,點確定
5.然后將文件擴展名改回xlsx,打開看看是不是已經(jīng)沒有保護密碼啦!
什么不喜歡看文字?沒有問題,上圖:
手動清除防修改密碼的方法
不過保護密碼的本來就級別很低,因為當(dāng)我們能看文件內(nèi)容有很多方法做到去除保護密碼,直接用vba編程模式,網(wǎng)絡(luò)搜索一下清除保護密碼的代碼,復(fù)制在vba存一下,執(zhí)行一下,就能清除保護密碼了。這種級別的密碼保護采用這樣的設(shè)計也挺合理,畢竟公司開發(fā)功能和保護級別成正比,如果打開文件密碼也是這樣方式就有問題,什么功能需求對應(yīng)什么樣的保護級別沒有什么問題,適合才最好!
2003版之前,帶不帶宏代碼的文件都是xls,有一段時間宏病毒爆發(fā),導(dǎo)致為了安全都會統(tǒng)一將宏禁用,為了改善這一情況,在2007版之后,將包含宏代碼的文件統(tǒng)一使用xlsm擴展名,這樣易于區(qū)分可能存在安全風(fēng)險的文件,也能更高效和安全的管理文件,說了這么多,還是先了解什么是宏吧!
宏:源于英文單詞macro,意思是提供一些特殊功能,組合多條命令并實現(xiàn)某些功能自動化執(zhí)行,宏并不是Excel的專利,也同時出現(xiàn)其他的編程語言中,不過不同的是,宏在Excel并不能編譯成可執(zhí)行文件,只能存在于文件中借助Excel環(huán)境執(zhí)行,這也是為什么用禁用宏就能阻止宏病毒的爆發(fā)!
哪宏和VBA有什么區(qū)別嗎?
普遍意義的上宏跟VBA并無區(qū)別,實際上宏在最早是指的” 宏表”,VBA最早出現(xiàn)在Excel 5.0的版本中,而”宏表”的在一開始就存在的文件中,因為在1970-1979年的時候,錄制宏就已經(jīng)非常流行了。
哪兩者有本質(zhì)的區(qū)別嗎?
實際沒有,錄制宏就是系統(tǒng)將某些鼠標(biāo)鍵盤的操作轉(zhuǎn)化為VAB代碼的過程,生成的代碼冗余度高,繁瑣,就更別說的性能方面的考慮了,沒有普通的工程師編寫的代碼簡潔,高效,而作為大多數(shù)的我們,只要能用OK就啦,雖然 VBA編寫代碼已經(jīng)很普遍了,但在2016版依然保留的宏表的功能,就說明它還是有市場的啊!說完了區(qū)別就該說說宏文件xlsm文件結(jié)構(gòu)。
xlsm文件結(jié)構(gòu)
它和xlsx都是采用基于XML使用ZIP壓縮技術(shù)的文件格式,它不同的地方就是它比xlsx文件多出來一個模塊用來存儲宏編碼。至于拆解文件的方法,我們同樣采用修改xlsm為rar或zip,然后解壓后,就發(fā)現(xiàn),她在xl目錄中比xlsx文件多了一個文件夾叫activeX,不過它存儲的是文件包含的使用的代碼模塊并不包括詳細(xì)的代碼內(nèi)容,詳細(xì)的分析看下圖:
xlsm文件與xlsx文件的結(jié)構(gòu)對比
如果遇到xlsm文件需要注意什么呢?
1.當(dāng)我們接到陌生右鍵發(fā)來或陌生人發(fā)來的xlsm文件時候,就需要多加注意,先掃描確認(rèn)安全再打開
2.如果你的制作的表格里使用宏或者vba自定義的函數(shù),在存儲的一定要存儲成xlsm文件,否則會導(dǎo)致自定義的代碼和錄制的宏丟失!
我知道的xlsm的內(nèi)容也就這么多了,下面就是模板文件。
xltx模板文件是什么?用它有什么好處嗎?
xltx文件也是我們在日常常用的文件之一,如果我們創(chuàng)建的工作薄或者工作表具有特定預(yù)先自定義顏色,文字樣式,表格樣式,顯示樣式等統(tǒng)一樣式,就可以存儲為xltx文件,再次使用無需重復(fù)設(shè)置復(fù)雜的樣式設(shè)置,只需填充部分?jǐn)?shù)據(jù)就可以完成相應(yīng)的任務(wù),比如我們在制作某類文件時,對行高列寬有特殊的要求,只需將存儲為模板文件,啟用模板后就不需要在重新設(shè)置了,是不是這樣就就能提高工作效率了??!
xltx模板 可以保存宏的編碼信息嗎?如果不能,該用什么文件格式存儲啟動宏的模板呢?
當(dāng)然不能了,xltx只能存儲特定樣式的信息,并不保存為宏相關(guān)的代碼。如果想將自己自定義的函數(shù)應(yīng)用到新建的文檔中,需要保存為xltm模板文件,它不光能存儲自己定義的函數(shù)和錄制的宏,也能加載你從網(wǎng)絡(luò)上下載的宏插件,還能加載Excel自帶的宏程序比如分析工具庫,規(guī)劃求解等,這樣你就可以將自己配置使用的一些編寫的函數(shù)和錄制宏完美移植到其他的計算機上。如果你用Excel完成做成了一個小項目的,一定要多保存一份成xltm文件,這樣也能更好的在原來的編寫的代碼和錄制的宏進(jìn)一步的擴展增強功能,提高你的開發(fā)效率。
模板如何啟用?xltx文件到底能存的內(nèi)容還有那些呢?
啟用模板的方式有兩種,默認(rèn)開啟,手動設(shè)置開啟;
A) 默認(rèn)開啟:對文件有兩方面要求:
1.默認(rèn)開啟對模板的文件名有要求,比如工作薄的文件名,中文版:工作薄.xltx,英文版:book.xltx,工作表默認(rèn)為sheet.xltx,帶有宏的模板文件名:工作薄.xltm,英文:book.xltm.
2.默認(rèn)的存放模板的路徑為:系統(tǒng):windows 8.1 ,用戶名:THINK,路徑為:c:\用戶\THINK\AppData\Roaming\Microsoft\Excel\XLStart\
B) 手動自定義模板啟動目錄,方法有2;
1:可依次【文件】->【選項】彈出的【Excel選項】,選擇【信任中心】選項卡,點擊【信任中心設(shè)置(T)】按鈕,彈出信任中心窗口,選擇【受信任位置】選項,里面包含默認(rèn)模板文件目錄信息,你可以通過增加或修改,刪除按鈕進(jìn)行配置。
手動修改默認(rèn)啟動目錄操作示意圖
2: 你也可以通過自定義的方式配置屬于自己的模板啟動文件夾:【文件】->【選項】->【Excel選項】選【高級】選項,在啟動是打開此目錄中的所有文件,輸入你要設(shè)置的目錄,然后點擊確定按鈕。
自定義模板啟動目錄
完成上述配置后,在Excel按ctrl+n組合鍵或或點【文件】-【新建】命令,就能實現(xiàn)根據(jù)模板創(chuàng)建的工作薄拉!
在文章的末尾,我整理了一下xlst文件存儲的設(shè)置內(nèi)容如下:
1. 工作薄中的工作表的數(shù)目以及工作表標(biāo)簽的名稱,顏色,排列順序。
2. 【Excel選項】中【高級】選項卡下的部分設(shè)置比如:顯示網(wǎng)格,顯示工作表標(biāo)簽,顯示行和列標(biāo)題,顯示分頁符等
3. 自定義的數(shù)字格式
4. 單元格樣式包括字體,對齊方式,字體大小
5. 行高列寬以及打印相關(guān)的設(shè)置,如打印區(qū)域,頁眉頁腳,頁邊距等,
6. 額外可以保存部分?jǐn)?shù)據(jù),圖形控件,公式鏈接等
注意:你在通過模板創(chuàng)建的工作薄的操作,不是存儲到模板中,你做的任何操作對模板文件都不起作用,如果不想使用模板的設(shè)置信息,可直接刪除文件,就能恢復(fù)默認(rèn)的配置。
最后希望同過閱讀,能讓你對Excel的3個文件類型有個新的認(rèn)識,也希望能對你的工作有所幫助,好了今天的內(nèi)容就到這,我么相約下文再見吧!
聯(lián)系客服