2012-05-23 71 views
1

上我有一個組合框的Access 2007窗體上的值或文本。 我創建保存文本值饋送到組合框的表。如何修剪那些在ComboBox中選定一個訪問表

的文本太長,所以我想如果選擇任意值,成爲修剪到最後5個字符 文本。

例子:在下拉列表是:我最喜歡的顏色是綠色 - 10001

但是,如果用戶選擇綠色,我只想用裝飾插入代碼查詢。

如何修剪被選擇,以便只有代碼被傳遞到查詢的其餘部分的值/文本?

PARAMETERS [Forms].[ExampleForm]![cboColor] Text (255); 

SELECT FavColor 
FROM COLOR 
WHERE FavColor IS NOT NULL 
HAVING (MAX(FavColorCode)=Forms.ExampleForm!Right(Trim([cboColor]),5)) 

我得到未定義功能的錯誤消息。

謝謝大家!

蓋伊

回答

2

只是一個提示,可能是:

PARAMETERS [Forms].[ExampleForm]![cboColor] Text (255); 

SELECT FavColor 
FROM COLOR 
WHERE FavColor IS NOT NULL 
AND (MAX(FavColorCode)=Right(Trim([Forms].[ExampleForm]![cboColor]),5)) 

你的SQL語句是不正確的,試試這個現在

+0

謝謝你的方向和矯正。 :) – Asynchronous

1

看起來@Luka展示瞭如何用正確的使用這些功能值從cboColor。但是,在修復了這部分查詢之後,我懷疑db引擎會拋出一個不同的錯誤:

您試圖執行一個查詢,該查詢不包含指定表達式'FavColorCode'作爲聚合函數的一部分。

我認爲你需要或者做別的事情,而不是HAVING條款,或添加GROUP BY子句和聚集表達式您SELECT字段列表。不過,我不知道如何解決查詢,因爲我不明白它應該做什麼。

相關問題