2013-11-26 57 views
0

我被要求在Access 2007 VBA應用程序上執行一些更新。我的經驗主要是使用Excel VBA,而Access並不多。訪問VBA - DoCmd.TransferText錯誤「INSERT INTO語句包含以下未知字段名稱...」

在一個地方,我們添加了一些額外的字段。其中一個表導出到Excel工作簿是這樣的:

DoCmd.TransferText acExportDelim,「(文本文件規範)」,「(源表名)」,(路到CSV文件被創建),真

添加新的字段源表後,我得到的錯誤:

「INSERT INTO語句包含以下未知的字段名稱:‘(字段名)’確保你正確輸入了姓名,並再次嘗試操作。「

在閱讀我能找到的內容之後,我明白問題在於「文本文件規範」沒有新的字段。此外,我不能編輯文本文件規範,而是必須創建一個新文件。

好的,我可以那樣做。但是,我怎麼知道以前的文本文件規範正在做的一切?我可以看到結果,但這並不一定告訴我它所做的一切。

是否可以看到,即使只讀,該文本文件規範?如果我(在Access 2007中)轉到外部數據選項卡>導出部分>已保存的導出,並轉到已保存的導出選項卡,我會看到一個可能是唯一的項目,儘管它似乎沒有相同的名稱就像我在DoCmd.TransferText行中看到的一樣。不過,我看不出有什麼辦法看它做什麼;只是一個名字,一個描述(空白)和一個路徑(目前不是有效的)。

有沒有比玩猜謎遊戲更好的方式來了解舊文本文件規範的作用?

有什麼建議嗎?

感謝,

格雷格

回答

2

在Access中,右鍵單擊要導出的表,然後選擇Export > Text File。在導出嚮導的第一頁上,爲此測試導出指定目標文件名,然後單擊「確定」。

在隨後的對話框中(您可以選擇「分隔符」或「固定寬度」),單擊左下角的「高級...」按鈕。這將帶您進入Export Specification對話框。點擊「規格...」按鈕,您將看到保存的導出規格列表。選擇你想要的並點擊「打開」。

做出更改後,請記得單擊「另存爲...」按鈕並使用與舊版本相同的名稱保存新版本。 (當被問到是否要覆蓋現有規範時,請說「是」。)