いつも拝見させていただき勉強させて頂いております。
抽出結果をリストボックスに追加させたいのですがうまくいきません。


access2000を使用しております。
テーブル構成は以下の通りです。

会員NO|会員名|会員住所|登録日|
0001  あああ 東京   20050102
0002  いいい 大阪   20050103
0003  ううう 名古屋  20050105


このテーブルを使用して登録日で会員を日付範囲で抽出して同フォーム内の空のリストボックスに表示させたいのです。

以下のように記述してみたのですがどのようにすればいいのかわかりませんでした。

Private Sub 抽出_Click()
Dim strFilter As String

strFilter = "登録日>=" & Me.抽出開始日_text.Value & " And 登録開始日<=" & Me.抽出終了日_text.Value


新規会員_list.additem ???????
※ここまではなんとかやってみたのですがどうすればいいのかよくわからずギブアップしてしまった次第です。

初心者で大変申し訳ないのですが、お知恵をお貸しください。
よろしくお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

Accessフォームなら2通りの方法があります



1.「値集合ソース」を利用する
・リストボックスのプロパティ「列数」を"2"に設定
・リストボックスのプロパティ「値集合タイプ」を"テーブル/クエリ"に設定
・リストボックスのプロパティ「値集合ソース」に下記のようにSQLを設定(VBAから)
Me.新規会員_list.RowSource = "SELECT 会員NO, 会員名 FROM テーブル名 WHERE 登録日 Between '" & Me.抽出開始日_text.Value & "' And '" & Me.抽出終了日_text.Value & "';"

2.レコードセットを使用する
・リストボックスのプロパティ「列数」を"2"に設定
・リストボックスのプロパティ「値集合タイプ」を"値リスト"に設定
・対象のテーブルをすべてレコードセットに取得する
・取得したテーブルデータを全件追加していく

あと気になった点ですが、「登録日」フィールドは日付型でしょうか?または文字列型?
条件文に対象のフィールドを記述するときには、文字列型の場合は"'"で括らなければなりません
文字列型の場合は"#"で括ります

まずは難しく考えることより、デザイン上からリストボックスのプロパティ「値集合ソース」をいじって見てください
「クエリビルダ」で表示する内容を指定することができますよ

この回答への補足

ご回答ありがとうございます。
土日の間に頭をひねりながら試してみました、
値集合ソースで試してみたところ、VBAのところで
ご指南いただいた、構文;Me.新規会員_list.RowSource = "SELECT 会員NO, 会員名 FROM テーブル名 WHERE 登録日 Between '" & Me.抽出開始日_text.Value & "' And '" & Me.抽出終了日_text.Value & "';"と入力するとSQLステートメントが正しくないと出てきてしまいます。
SELECTまたは、
そこで SELECT 会員NO, 会員名 FROM テーブル名 WHERE 登録日 Between '" & Me.抽出開始日_text.Value & "' And '" & Me.抽出終了日_text.Value & "';としてみましたがうまくいきません。
Select または Deleteを使用してくださいとのことなのでこのようにしてみました。
少し難しく考えすぎなのかもう少し簡単な方法をを考えてみたいと思います。
ありがとうございました

補足日時:2005/04/25 10:47
    • good
    • 0
この回答へのお礼

結局GW明けまで悩んでおりましたところ
昨日すんなりと動くようになりました。
もう少し私個人、勉強する必要があったようです。
丁寧なご回答ありがとうございました。

お礼日時:2005/05/09 09:00

こんな感じですかね?



リスト(コンボ)の設定は 項目1、項目2の2つを表示するものとします。

Do Until TABLE.EOF
Me.list_sample.AddItem TABLE!DATA_1 & ";" & TABLE!DATA_2 & ";"
Loop

サンプルですので動作確認はしていません。

この回答への補足

ご回答ありがとうございました。
このようにしてみました、
Private Sub 抽出_Click()
Do Until TABLE.EOF
Me.新規会員_rist.AddItem TABLE!会員NO & ";" & TABLE!氏名 & ";"
Loop

End Sub
なんども考えてやっているのですが、メソッドまたはデータメンバが見つからないと表示されてしまいます。
私の知識不足なのかなかなかうまくいかないものです;;

補足日時:2005/04/25 11:04
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。早速試してみたいと思います。

お礼日時:2005/04/22 18:32

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング