過去ログ

                                Page     161
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼コンボボックス  栢山 03/1/15(水) 10:58
   ┗Re:コンボボックス  yu- 03/1/15(水) 11:24
      ┗Re:コンボボックス  栢山 03/1/15(水) 13:23
         ┗Re:コンボボックス  yu- 03/1/15(水) 14:15
            ┗Re:コンボボックス  栢山 03/1/15(水) 14:42
               ┗Re:コンボボックス  yu- 03/1/15(水) 17:04
                  ┗Re:コンボボックス  栢山 03/1/15(水) 17:22

 ───────────────────────────────────────
 ■題名 : コンボボックス
 ■名前 : 栢山
 ■日付 : 03/1/15(水) 10:58
 -------------------------------------------------------------------------
   はじめまして。ACCESSをはじめて一ヶ月が過ぎます。
OS:2000 Ver:2000 で行っております。

コンボボックスが2つあり、それぞれコンボ1,コンボ2とします。
コンボ1には都道府県名があります。
コンボ2には市名などが表示しております。
コンボ1で都道府県名を選択したらコンボ2には、それに該当する市名(郡なども)だけを
表示させるようにしたいのですが いまいちよくわかりません。

コンボボックスの値はテーブルから取得しています。

誰か知っている方はいませんか?教えてください

 ───────────────────────────────────────  ■題名 : Re:コンボボックス  ■名前 : yu-  ■日付 : 03/1/15(水) 11:24  -------------------------------------------------------------------------
   テーブル構成がわからないので簡単な例ですが・・・

例えば下記のようなテーブルからコンボボックスに値を入れていたとして

都道府県名  市名
------------------
東京都   渋谷区
東京都   新宿区
    :
    :

コンボ1では都道府県名を選ばせて、選択された値をもとにコンボ2で市名を表示させます。

下記のコンボ1の変更イベントを設定すればいけると思います。
参考にしてみてください

Private Sub コンボ1_BeforeUpdate(Cancel As Integer)
  コンボ2.RowSource = _
      "SELECT 市名 " & _
      "FROM [テーブル] " & _
      "WHERE 都道府県名 = '" & コンボ1.Value & "';"
End Sub

▼栢山 さん:
>はじめまして。ACCESSをはじめて一ヶ月が過ぎます。
>OS:2000 Ver:2000 で行っております。
>
>コンボボックスが2つあり、それぞれコンボ1,コンボ2とします。
>コンボ1には都道府県名があります。
>コンボ2には市名などが表示しております。
>コンボ1で都道府県名を選択したらコンボ2には、それに該当する市名(郡なども)だけを
>表示させるようにしたいのですが いまいちよくわかりません。
>
>コンボボックスの値はテーブルから取得しています。
>
>誰か知っている方はいませんか?教えてください

 ───────────────────────────────────────  ■題名 : Re:コンボボックス  ■名前 : 栢山  ■日付 : 03/1/15(水) 13:23  -------------------------------------------------------------------------
   ▼yu- さん:
>テーブル構成がわからないので・・・

説明が足りませんでしたね ごめんなさい

ひとつが都道府県用のテーブルでもうひとつが市町村用のテーブルです。

IDでリレーションシップをつなげています。

ID : 都道府県名   ID: 市名
---------------  ---------------
1 : 北海道     1 : 札幌市
2 : 青森      2 : 青森市
    

   

 ───────────────────────────────────────  ■題名 : Re:コンボボックス  ■名前 : yu-  ■日付 : 03/1/15(水) 14:15  -------------------------------------------------------------------------
   テーブルが2つでもやることは基本的に一緒です

1. コンボ1では都道府県名テーブルから都道府県名を選ばせる。
 (表示は名前で、コンボ1の値自体にはIDになるようにコンボ1設定します)

2. コンボ1の値使ってをコンボ2のRowSourceを設定。
 (イベントクラスモジュールに記述してください)

Private Sub コンボ1_BeforeUpdate(Cancel As Integer)
  コンボ2.RowSource = _
      "SELECT 市名 " & _
      "FROM [市町村用テーブル] " & _
      "WHERE ID = '" & コンボ1.Value & "';"
End Sub

▼栢山 さん:
>▼yu- さん:
>>テーブル構成がわからないので・・・
>
>説明が足りませんでしたね ごめんなさい
>
>ひとつが都道府県用のテーブルでもうひとつが市町村用のテーブルです。
>
>IDでリレーションシップをつなげています。
>
>ID : 都道府県名   ID: 市名
>---------------  ---------------
>1 : 北海道     1 : 札幌市
>2 : 青森      2 : 青森市
>    
>
>

 ───────────────────────────────────────  ■題名 : Re:コンボボックス  ■名前 : 栢山  ■日付 : 03/1/15(水) 14:42  -------------------------------------------------------------------------
   抽出条件でデータ型が一致しません。
とエラーが出てしまうのですが?

 ───────────────────────────────────────  ■題名 : Re:コンボボックス  ■名前 : yu-  ■日付 : 03/1/15(水) 17:04  -------------------------------------------------------------------------
   IDは数値型(もしくはオートNO型)ですか?
でしたら、where句のところに"'"はいりません。
下記のSQLで大丈夫です。

Private Sub コンボ1_BeforeUpdate(Cancel As Integer)
  コンボ2.RowSource = _
      "SELECT 市名 " & _
      "FROM [市町村用テーブル] " & _
      "WHERE ID = " & コンボ1.Value & ";"
End Sub


▼栢山 さん:
>抽出条件でデータ型が一致しません。
>とエラーが出てしまうのですが?

 ───────────────────────────────────────  ■題名 : Re:コンボボックス  ■名前 : 栢山  ■日付 : 03/1/15(水) 17:22  -------------------------------------------------------------------------
   出来ました。有難うございます。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 161