日付フィールドをコンボボックスにバインドするにはどうすればよいですか(行ソースタイプ=値リストあり)?日付フィールドを2列の「値リスト」コンボボックスにバインドするにはどうすればよいですか?
我々セットアップVBAでフォームのLoadで、このようなコンボボックス:
For i = 0 To 6
Dim strValueMember As String
Dim strDisplayMember As String
strValueMember = format(DateAdd("d", 0 + i, anchorDate), "dd-MMM-yy") & ";"
strDisplayMember = format(DateAdd("d", 0 + i, anchorDate), "ddd dd-MMM-yy") & ";"
strItems = strItems & strValueMember & strDisplayMember
Next i
strItems = Left(strItems, Len(strItems) - 1)
Me.cboDeliveryDate.RowSource = strItems
これは私たちに7日間のリストから選択することができ、ユーザとの小ぎれいなコンボボックスを提供します。ボーナスとして、彼は曜日を見るようになります(実際には、このエンドユーザにとって、曜日の名前は非常に重要です)。
コンボボックスは、(曜日名を表示するように)2つのカラム(真日付の)値の列と表示欄があります。
しかし、我々が設定バウンド方列問題があります。
を私たちが列にバインドされた列を設定した場合、それは明らかに動作しますが、格納された値が31/12/1899であるが、 1900年1月1日、1900年2月1日など、それは単にコンボのlistindexを読んで、それを日付に変換するだけです。
バインドされた列を列に設定すると、選択した値がデータベースに書き戻されるという点で実際に機能します。明らかに、ユーザーたちが列にバインドされた列を設定した場合、彼の編集が
をとっていることを感じることはありませんので、しかし、それは、フォーム上に表示されることはありません、我々はリストのエラーではありませんを取得します。
上記のすべての我々はstrValueMemberため
dd-MMM-yy
を使用するかかどうかを適用する(@HansUpの答えが示唆するように、
yyyy-m-d
)。
'次のintI'はエラーを発生させませんか? – HansUp
@ HansUpここで投稿を書く際にタイプミスがありました – hawbsl