2008-11-12 79 views
3

我正在將MS Access(2003)的報告導出到Excel(97-2003)輸出。停止Ms Excel將數字字符串自動格式化爲數字

其中一列的字符串對於某些行是數字的,例如「05-0880」。

當我在MS Excel中打開輸出文件時,相應的單元格被設置爲數字 -372424

我認爲這是由於Excel是「聰明的」,並確定「05-0808」表示某種類型的時間值或日期並將該字符串轉換爲相應的數值所致。

在我的情況下,數據代表產品代碼,這種轉換是非常不可取的。 如果我導出報表基礎查詢的輸出(導出數據表),則不會發生此轉換。 (建議訪問必須以阻止轉換的方式輸出爲Excel格式)。

我試着改變報告中的字段的格式屬性,但沒有「文本」選項,而「標準」似乎表現爲相同,因爲它留空。

有沒有辦法使用格式()函數強制字符串輸出? 如果是這樣,當Excel仍然可以進行巧妙的轉換時,這甚至會有幫助嗎?

只使用基礎查詢作爲輸出是一個選項,但不理想,因爲格式化和分組丟失。將報告導出爲文本格式是一種災難,因爲列沒有分隔。

回答

2

其實,它更像是相反的方式。 MS Access太笨了,無法正確導出報告。你可以用引號或撇號裝飾數據;然而,正如你所知道的那樣,這很醜陋,需要後期處理。

我的解決方法是仔細製作查詢,然後導出查詢結果而不是報表。這會給你你期望的結果。

1

導出「'05 -0880」而不是「05-0880」。

+0

其次。在字符串的開頭添加一個撇號(')。 – 2008-11-12 14:37:07

+0

如何導出excel文件? – TcKs 2008-11-12 14:41:32

+0

我試着在代碼/編號前面加上一個撇號,把報告中的文本字段的控制源改爲=「'」&[myfield],但是這導致在Excel中輸出'05 -0880,這不是理想的因爲我想避免輸出文件的後處理 – Loopo 2008-11-12 14:43:10

-1

確保您使用單引號而不是其他撇號。

相關問題