2014-05-16 71 views
1

在Access中的連續形式中,我們想要提供一個組合框,它將顯示7天,並將dayname作爲下拉列表的一部分。如何在輸入日期時在輸入字符串中允許dayname?

組合框被綁定到日期字段。我們可以很容易地填充在窗體的Load事件的組合框來顯示天ddd dd/MM/yy格式和現有的日期愉快地在表格上顯示,像這樣:如果你試着從你的下拉挑

enter image description here

然而錯誤:
您輸入的值對此字段無效。

涉及未綁定組合框的解決方案將不起作用,因爲這是一種連續的形式。

這是一種細節,因爲日期不是絕對必要的,組合工作正常,沒有日期名稱。然而,這是一項繁重的數據輸入表單,因此對最終用戶進行優化非常重要,並且使用日期名稱可以幫助他/她。

+0

你有沒有考慮一個日曆表?他們不佔用太多空間,而且非常有用。 – Fionnuala

+0

@Remou我們希望強制用戶從這7天內挑選,所以選擇列表似乎比日曆更適合我 – hawbsl

+1

您已將日期轉換爲字符串,因此存在數據類型不匹配,請考慮兩列,一列日期(因此日曆建議)和一個格式化的字符串。 – Fionnuala

回答

2

我重新創建了這個問題,我想出的解決方案是有一個組合框,其中行源有兩列,並使用ColumnWidths隱藏第一列,第二列是格式化的日期值。所以當你在組合框中選擇一些東西時,這個值是一個沒有問題的日期值。

填充像這樣的組合:

Dim i As Integer 
For i = 0 To 6 
    Dim item As Date 
    item = DateAdd("d", i, weekCommencingDate) 
    cboTimeDate.AddItem item & ";" & Format(item, "ddd dd/MM/yy") 
Next i 
+1

感謝@ashareef,我在代碼中編輯過來幫助未來的訪問者 – hawbsl

相關問題