はじめまして、宜しくお願いします。
VB6、SQLサーバーでタイトルのようなことを実現したいと思っています。
データベース(テーブル名:行事履歴)の内容は
年度 行事
----------------------
2001 夏期キャンプ
2001 修学旅行
2002 社会見学
となっており、
コンボ1で年度を選択して、選択した年度の行事を
コンボ2にリストとして表示したいと思っています。
(例えば、コンボ1で"2001"を選ぶとコンボ2には"夏期キャンプ"、"修学旅行"
のみが表示される)
現在やっているのは
コンボ1とそれに連結しているADOデータコントロール1、
コンボ2とそれに連結しているADOデータコントロール2を用意して
ADOデータコントロール1のRecordSourceには
"SELECT DISTINCT 年度 FROM 行事履歴"
ADOデータコントロール2のRecordSourceには
"SELECT * FROM 行事履歴"
としておき、
ADOデータコントロール1のCHANGEイベントで
ADOデータコントロール2のRecordSourceを
"SELECT * FROM 行事履歴 WHERE 年度 = '" & ADOデータコントロール1.TEXT & "'"
としているのですがコンボ2のリストに
"夏期キャンプ"、"修学旅行"、"社会見学"が3つとも表示されてしまい、
うまく連動してくれず行き詰っています。
(一応、コンボ2の.Refreshメソッドを行っているのですがうまくいかないようです。)
もしもなにかお気づきの方が居られましたら、ご教授ください。
宜しくお願いいたします。
No.4ベストアンサー
- 回答日時:
>一応、コンボ2の.Refreshメソッドを行っているのですがうまくいかないようです。
コンボ2ではなくADOデータコントロール2をRefreshしてみてください。
Private Sub DataCombo1_Change()
Adodc2.RecordSource = "SELECT * FROM 行事履歴 WHERE 年度 = '" & DataCombo1.Text & "'"
Adodc2.Refresh
End Sub
これでだめなようなら、補足してください。
早速のレスありがとうございます。
taisuke555さんの言うとおりデータコントロールの方を
Refreshしたら、うまく動きました。
コンボをRefreshをしても動かなかったので、
Refreshは意味がないと決め付けていました。反省です。
本当にありがとうございました。
No.3
- 回答日時:
takatooさん、こんにちわ。
VBとかSQLじゃなくちゃ駄目ですか?
先月私は同じような内容(たぶん…)で、ここで質問をしました。
私はずぶの素人なので、いただいた回答について理解が出来ず、結局は全く違う方法でこれを解決しました。
以下、参考になるかどうか分かりませんが…
『行事履歴』テーブルのほかに、『年度』テーブルも作っておきます。
文字通り、『年度』のデータしかないテーブルです。
コンボ1はこの『年度』テーブルから選択するようにします。
次に『行事履歴』テーブルの選択クエリを作成し、『年度』フィールドの表示チェックをはずします。
抽出条件は『コンボ1の内容』という数式を入れます。
続いてマクロを作成します。
1行目には『再クエリ』、使う場所(コントロール)はコンボ2の『行事』を表示するところ、2行目には『閉じる』とし、オブジェクトは作成したクエリになります。
あとはコンボ2の値集合ソースに作成したクエリを入れ、フォーカス取得時にマクロを入れれば…これで出来るはずです。
VBとかSQLとかは全く分からないので、参考にはならないとは思いますけど…
ちなみに下記のURLには私が質問したときの回答内容を入れておきます。
参考URL:http://oshiete1.goo.ne.jp/kotaeru.php3?q-371961
早速のレスありがとうございます。
現在のDB構造を変えたくないというのが、ありまして。。。
しかし、ご丁寧な説明ありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Access 複数条件検索の設定が上手く行きません 1 2022/07/22 20:37
- Visual Basic(VBA) 【VBA】データを入力後に,同一シート内に履歴として転記するVBAコードを教えていただきたいです。 3 2022/11/16 01:37
- PHP php my adminより取り出したデータ表示 2 2022/06/15 11:56
- 労働相談 退職者(自分)のグレードや所属歴などの個人データの保管期間について 労基法などに詳しい方いませんか? 1 2022/04/12 01:30
- Chrome(クローム) 入力フォームの履歴を消したい 2 2023/06/29 13:02
- 中途・キャリア 契約社員で在職中ですが、正社員目指して転職活動中です。 20代半ばの男です。 2社から内定を頂きまし 5 2022/04/29 13:39
- Excel(エクセル) VLOOKUP が機能しない、その原因は何 ? 8 2022/10/19 12:06
- MySQL 書籍の内容はまともでしょうか? 1 2023/01/22 03:07
- その他(Microsoft Office) EXCELでバーコードを作成すると白くなってコードが見えません 1 2022/04/04 14:24
- Chrome(クローム) Chromeでgooglemap検索等結果が他国になってしまう 1 2022/10/05 12:18
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル・VBA CheckBoxのオブ...
-
エクセルVBAでオプションボタン...
-
EXCELでactivexコントロールを...
-
chr関数の呼び出しで「プロ...
-
(VBA)スピンボタンの大量...
-
変数をコントロール型で使用す...
-
カメラスクロールするのを動画...
-
excelのリストボックスで選択し...
-
vb.netで画面のコントロールId...
-
エクセル コントロールツール...
-
ユーザーフォームで動的(Me.Con...
-
C#で自分のウインド・ハンド...
-
Groupboxの配下のコントロール...
-
VBAのフォームでTextBoxがいっ...
-
Excelのチェックボックス
-
TreeGridView(オープンソース)...
-
エクセルVBAユーザーフォーム・...
-
複数のコマンドボタン(VBAで)...
-
VBAのエラーについて、”実行時...
-
コントロールの作成する数について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
カメラスクロールするのを動画...
-
エクセル・VBA CheckBoxのオブ...
-
全てのオブジェクトのプロパテ...
-
EXCELでactivexコントロールを...
-
エクセルVBAでオプションボタン...
-
vb.netで画面のコントロールId...
-
コンボボックスの文字によるif...
-
ListViewのチェックボックスに...
-
フォーム上の現在アクティブな...
-
変数をコントロール型で使用す...
-
ExcelVBAでListViewが使用できない
-
ユーザーフォームで動的(Me.Con...
-
コントロールを移動できない
-
C#で角が丸いテキストボックス
-
アクセス特有の書き方?
-
間違えて配置してしまったコン...
-
OCXって何ですか?
-
'ckbl' コントロールは作成され...
-
VBAのフォームでTextBoxがいっ...
-
ActiveX DLL と ActiveXコント...
おすすめ情報