2012-01-03 57 views
2

我使用excel 2003並從asp頁面導入外部數據源。外部數據格式化去掉前導零

此頁面返回一個填充excel單元格的數據表。

如果一個單元格中有一個電話號碼,則前導零將被excel刪除,但如果我在導入對話框中查看查詢,則零仍然存在!

單元格已被格式化爲「文本」,希望這不會發生,但仍將文本視爲一個數字!

任何想法?我真的可以在這一點上提供一些幫助。

+2

在將文本放入單元格之前需要添加一個單引號。這讓Excel知道它是一個文本值。 IOW,分配「012-34-4432」(注意前面的單引號)。 – 2012-01-03 17:17:36

+0

感謝您的回覆。我編輯了我的asp代碼,在每個項目之前添加一個'這樣的作品,但現在每個領域都有'展示'。 – Dave 2012-01-03 17:47:17

+0

這不應該發生。如果前導字符是單引號,則它會通知Excel將單元格設置爲文本格式。 (你可以在Excel中自己嘗試一下,在一個單元格中輸入一個前導零的數字,零點被刪除,在0位之前輸入相同的數字並帶有前導單引號,並且零點仍然存在。報價左邊的空格? – 2012-01-03 17:50:23

回答

0

嗯,將NumberFormat更改爲文本應該工作。如果您正在處理固定寬度的單元格(即電話號碼爲10位數字),則可以手動添加前導零。假設數據在A列,把這個公式爲B列

=right("000000000"&A1,10) 

您可以再複製和PasteSpecial的成列A

如果細胞是不固定的寬度,如果你有機會獲得查詢填充asp頁面,可以插入一個具有所需單元長度的臨時列,並使用它來修改該函數。同樣,如果您只是想要顯示信息而不需要對其進行操作,則可以在單元格上放置數字掩碼(格式化單元格 - >自定義 - > 0000000000)。

至於升級,我目前正在使用Excel 2007,並通過使特定列成爲文本字段來不斷導入帶前置零的數據。