2014-02-13 46 views
1

我有一個Access 2007數據輸入表單,它綁定到一個表格,該表格僅用作數據的存儲站,直到它被檢查並附加到永久表中。表格中有幾個字段(以及表格)具有多值選擇(從查找表查詢中導出)。用戶不關心數據是否可搜索,因此長列表存儲在文本字段中沒有問題。問題在於追加。我無法將多值列表附加到表中。添加多值列表

我注意到,如果我將表格保存爲Excel電子表格,然後將其導回到具有與導出表格相同的數據庫結構的表格中,但沒有用於需要多值的字段的多值組合框(它們是現在只是文本框),列表在那裏並按照我想要的格式進行格式化。

所以我想,什麼代碼是Access使用將正確的值導出到Excel,我可以只使用類似的代碼追加到永久表(它不必具有相應的文本字段格式化爲多值列表),而不必導出到Excel文件,然後將其導入到新模板中?請注意,雖然有些列表只有10-15個選項,但有一個列表有50多種可供選擇的選項。

我只是想做一個用戶友好的數據錄入界面,沒有vba編碼(我是一個新手)。備選想法是受歡迎的。

+0

我建議你避免多值,而不是尋找另一種解決方案。只需在表單中使用組合框和列表框,而不是表中的多個值。 – Fionnuala

回答

0

在內部,Access正在做Allen Browne的ConcatRelated功能。幸運的是,阿倫的代碼將處理多值字段,以便你可以使用它在一個這樣的查詢

INSERT INTO MainTable (MealType, Meats) 
SELECT MealType, ConcatRelated("Meats","TempTable","TempID=" & [TempID]) AS Expr1 
FROM TempTable; 

其中[MainTable] [肉類]是Text(255)和[不是Temptable] [肉類]是一個多價值Lookup字段。

+0

這是有史以來最棒的一件事。很棒。做我想要的。並很好地評論,所以我可以跟隨和學習。不能要求更多。太感謝了! – user12059

+0

工作示例鏈接已死亡 –