如何設(shè)置 Excel 電子表格的格式以使其保留前導(dǎo)零,?問(wèn):您好,腳本專家,!如何設(shè)置 Excel 電子表格的格式以使其保留前導(dǎo)零,? -- AS 答:您好,AS,。您知道,有個(gè)腳本專家仍然在做有關(guān)數(shù)字零的惡夢(mèng),。幾年前,,他突然接到一個(gè)朋友打來(lái)的電話,,問(wèn)他是否愿意幫著訓(xùn)練一支少年籃球隊(duì)(10 到 11 歲)。因?yàn)橄騺?lái)就不三思而行,,所以這個(gè)腳本專家就說(shuō),,“當(dāng)然愿意”。 結(jié)果,,球隊(duì)在最后關(guān)頭才成立,,而且成員都是聯(lián)盟中其他教練不想要的選手。(他們?nèi)?10 歲,,而聯(lián)盟中大多數(shù)隊(duì)員都是 11 歲,。)繼開(kāi)場(chǎng)賽 14-12 失利之后 - 帶著一點(diǎn)天真的樂(lè)觀 - 球隊(duì)在后三場(chǎng)比賽中一分未得。 對(duì),,您沒(méi)聽(tīng)錯(cuò):一分未得,。在籃球賽中一分未得,在同樣的比賽中張伯倫曾經(jīng)一個(gè)人就拿到 100 分,。一分都沒(méi)得,、光板、鴨蛋,。換句話說(shuō),,全是零。 順便說(shuō)一下,,如果您想殺殺自己的威風(fēng),,我們建議您當(dāng)一名連續(xù)三場(chǎng)比賽一分不得的籃球隊(duì)的教練。這樣馬上您就會(huì)銳氣大減,。 幸好,,AS,Excel 中的前導(dǎo)零不太可能傷害您的自尊,。我們假定您想要將一些數(shù)字(例如 1 到 10)添加到一個(gè)電子表格中,,然后,像下面這樣設(shè)置這些數(shù)字的格式: 001 002 003 004 005 006 007 008 009 010 您能做到嗎,?嗯,,就像我們所說(shuō)的,就提供零而言,,至少有一位腳本專家堪稱世界級(jí)專家: Set objExcel = CreateObject("Excel.Application") objExcel.Visible = True Set objWorkbook = objExcel.Workbooks.Add() Set objWorksheet = objWorkbook.Worksheets(1) For i = 1 to 10 objExcel.Cells(i, 1).Value = i Next Set objRange = objWorksheet.UsedRange objRange.NumberFormat = "000" 對(duì)于 Excel 好像情況總是如此,,這確實(shí)是一個(gè)非常簡(jiǎn)單的小腳本。例如,,此代碼的前四行是樣板化的:它們的功能就是創(chuàng)建一個(gè)可見(jiàn)的 Excel 實(shí)例,,然后為我們提供一個(gè)空白工作簿和空白工作表。然后,,我們運(yùn)行以下代碼塊來(lái)遍歷單元格 A1 到 J1,,并在每個(gè)單元格中放置一個(gè)數(shù)字(1 到 10,,與行號(hào)相對(duì)應(yīng)): For i = 1 to 10 objExcel.Cells(i, 1).Value = i Next 換句話說(shuō),我們的單元格中的數(shù)字將像下面這樣: 1 2 3 4 5 6 7 8 9 10 這確實(shí)是個(gè)不錯(cuò)的點(diǎn)子:我們不想要這樣的數(shù)字,,是吧,?這就是此腳本要包括最后這兩行代碼的原因: Set objRange = objWorksheet.UsedRange objRange.NumberFormat = "000" 所有的樂(lè)趣都在這了。在第一行中,,我們創(chuàng)建一個(gè) Range 對(duì)象,,此對(duì)象包括電子表格上包含數(shù)據(jù)的所有單元格(這由 UsedRange 屬性為我們提供)。創(chuàng)建此范圍之后,,我們將 NumberFormat 屬性的值設(shè)置為 000,。這會(huì)為我們提供前導(dǎo)零。換句話說(shuō):
就這么簡(jiǎn)單。如果我們想要數(shù)字顯示更多的零,,則我們必須做的就是向 NumberFormat 添加一些額外的零,。例如,此行代碼可讓數(shù)字最多顯示六個(gè)零: objRange.NumberFormat = "000000" 就是這么簡(jiǎn)單,。 順便說(shuō)一下,,有件事我們得承認(rèn)。在本專欄的開(kāi)始部分,,我們說(shuō)青年籃球隊(duì)在第一場(chǎng)比賽中以 14-12 失利,。事實(shí)并非完全如此。某個(gè)星期五,,此腳本專家的朋友接到一個(gè)電話,,詢問(wèn)他是否愿意做此隊(duì)的教練;打電話的人說(shuō),,“嗯,,明天就開(kāi)始訓(xùn)練”。 “太好了”,,這個(gè)朋友說(shuō),。“我們的第一場(chǎng)比賽是什么時(shí)候”? “昨晚,。不過(guò)因?yàn)槟鷽](méi)有到場(chǎng),,所以只好放棄了”。 換句話說(shuō),,在有人知道這是一個(gè)球隊(duì)之前,,這個(gè)球隊(duì)?wèi)?zhàn)績(jī)已經(jīng)是 0-1 了。這回您就了解了有關(guān)此賽季的全部情況了。 |
|