Access初心者です。
ほかの類似の質問を検索して試してみたのですが、
どうしても同じようにできません。
もう1週間も同じところでつまづいています。
どなたか、初心者にもわかるように教えていただければ幸いです。
以下のようなテーブルがあるとします。
[都道府県] [市区町村]
東京都 新宿区
東京都 港区
東京都 渋谷区
神奈川県 横浜市
神奈川県 川崎市
神奈川県 藤沢市
埼玉県 さいたま市
埼玉県 熊谷市
埼玉県 三郷市
フォーム上で、 [都道府県]のコンボボックスで東京都を選んだ場合、
[市区町村]のコンボボックスには「東京都」の市区町村名が
選択できるようにしたいのですが、
一番最初のところで行き詰っています。
コンボボックスウィザードにしたがって
[都道府県]のコンボボックスを作成すると、
[東京都]
[東京都]
[東京都]
[神奈川県]
[神奈川県]
[神奈川県]
…
というリストが出てきてしまいます。
過去の質問を検索し、プロパティの値集合ソースで、
SELECT[都道府県]…FROM[テーブル名]の後に、
GROUP BY[都道府県]と書き加えたのですが、
こうするとリストが出てこなくなります。
いったいどうしたらよいのでしょうか。
ほとほと困っています。
どうかご教示ください。お願いいたします。
No.6ベストアンサー
- 回答日時:
ごめんなさい。
暑さで脳の中が煮えくり返り、大間違いをしでかしていました。
更新後処理ですから、
Private Sub cmb都道府県_AfterUpdate()
Me!cmb市区町村.Requery
End Sub
です。
cmb都道府県_BeforeUpdate(Cancel As Integer)
ではありませんでした。
それから、
>FROM句の構文エラーです
これは、テーブル名と値集合ソースの中のテーブル名に
違いが存在する可能性があります。
念のために、cmb都道府県とmb市区町村の値集合ソースの
実際のデータをコピーして示してもらえますか。
結構重要なところなので最後までつきあいます。
http://oshiete1.watch.impress.co.jp/qa5995365.html
このぐらいの長さなら大丈夫です。
最新のご回答にもうお礼をつけられなくなってしまったので、
こちらに改めてお礼を書かせていただきます。
piroin654さま、本当に本当にありがとうございました。
顔も知らない素人に辛抱強くおつきあいいただき、
一番心強かったのが「最後までつきあいます」のお言葉でした。
何度お礼を申し上げても足りません…本当にありがとうございました。
単純なる入力の間違いで何度もご面倒をおかけしたこと、
申し訳なく恥ずかしく思っております。
今までExcelのマクロも使ったことがなく
イベントプロシジャも初めて書きましたが、
何度も教えていただき一つずつ書き込んでいるうちに
なんとなく構文の意味が分かってきて、
もっとAccessを勉強したいと思うようになりました。
ここ1週間Accessなんて大嫌いだー!と思っていたのに(←逆恨み)
piroin654さまのおかげです。
Access,おもしろいです。もっと勉強します。
短い(でも濃い!)時間でしたが、ありがとうございました!
心から感謝しています。本当にありがとうございました。
No.7
- 回答日時:
それと、Mo5の(3)の
列数 1
列幅 2cm
No5の(4)の
列数 2
列幅 0cm;2cm
は重要なので必ず設定してください。
この回答への補足
あああ!で、できました!!!
cmb市区町村の最後の「cmb都道府県」に「[」が抜けていました(恥)
気づいて入力したら!できました!!!
本当に本当にありがとうございます!!!
piroin654さま、ご面倒をおかけし誠に申し訳ございません。
お暑い中お付き合いいただき、本当に感謝しております。
そして、おかげさまで一歩前進しました!
cmb都道府県が、グループ化できました!!!
ちゃんと3都県がリスト化されました(泣)
本当にありがとうございます!
ここに貼り付けるようにと仰られたとおりにしようと思って、
コピー&ペーストしたら…あれ、どこか違う、と思って、
再度手で入力したら、ちゃんとできました(恥)
「FROM句の構文エラーです」も出ず、ちゃんと動きました。
単純な入力間違いだったのですね…お恥ずかしいです。
ですが、cmb市区町村のほうはまだ駄目です…
最初のcmb都道府県と同じで、白い1行のリストが出てきてしまいます。
cmb都道府県は、
SELECT T住所.都道府県 FROM T住所 GROUP BY T住所.都道府県;
cmb市区町村は、
SELECT T住所.都道府県,T住所.市区町村 FROM T住所 WHERE(((T住所.都道府県)=[Forms]![F住所]!cmb都道府県]));
列数、列幅はそれぞれご指示どおりになっています。
まだお付き合いくださるとのこと、
なんてお礼を申し上げていいのかわかりませんが、
本当にありがとうございます。
お時間がある時で結構ですので、どうぞよろしくお願いいたします。
No.5
- 回答日時:
最初から説明します。
簡単に確認のため以下のようにしてみてください。
(1)
まず新しいフォームを作成してください。
名前をF住所とします。
(2)
フォームにコンボボックスを二つ設定します。
コンボボックスの名前をそれぞれ、
cmb都道府県
cmb市区町村
とします。
(3) cmb都道府県の設定:
値集合ソース:
SELECT T住所.都道府県
FROM T住所
GROUP BY T住所.都道府県;
列数 1
列幅 2cm
その他は既定
(4) cmb市区町村の設定:
値集合ソース:
SELECT T住所.都道府県, T住所.市区町村
FROM T住所
WHERE (((T住所.都道府県)=[Forms]![F住所]![cmb都道府県]));
列数 2
列幅 0cm;2cm
その他既定
(5) cmb都道府県の設定
cmb都道府県のプロパティの更新後処理の右端を
クリックし、ビルダの選択を表示し、コードビルダ
をクリックします。コード表が表示され、
Private Sub cmb都道府県_BeforeUpdate(Cancel As Integer)
End Sub
と、表示されます。そこで
Private Sub cmb都道府県_BeforeUpdate(Cancel As Integer)
Me!cmb市区町村.Requery
End Sub
のように、
Me!cmb市区町村.Requery
を中に入れて保存して閉じます。
(6)ついでに応用
F住所にテキストボックスを一つ設定します。
そのコントロールソースに、
=[cmb市区町村].Column(1)
とします。これによりテキストボックスに
cmb市区町村で選択した名前が表示されます。
単に、=[cmb市区町村] とすると県の名前が
表示されます。cmb市区町村の値集合ソースでは
都道府県と市区町村が選ばれていますが、
コンボボックスの設定で都道府県は非表示
になっています。したがって単に、=[cmb市区町村]
とすると県の名前が表示される、ということです。
=[cmb市区町村].Column(0)
とすると、県の名前が表示されます。
piroin654さま、たびたびお手をわずらわせ、本当に申し訳ありません。
また、お礼が遅くなってしまい、重ね重ね申し訳ありませんでした。
とてもわかりやすいご説明、ありがとうございます。
なのに…できないんです!申し訳ありません!
お察しだと思いますが、テーブルとして挙げたのはあくまでも例ですので、
piroin654さまのNo.5の記述のとおり、
新たに「T住所」のテーブルと「F住所」のフォームを別に作って
昨日から何回も作ってみました。でもできないんです(泣)
全部入力してフォームに戻り試してみようとすると、
「FROM句の構文エラーです」というのが出るのが一番多いです。
もう一つ不思議なのは、
No.5(5)の手順でコードビルダをクリックすると、
書いていただいたコードとは違い、
Private Sub cmb都道府県_AfterUpdate()
End Sub
と書かれています。
これを、ご指示のとおりBeforeUpdate~に書き直しても、
やはりリストは空欄になってしまいます。
あんなにご親切に教えていただいたのに、
1日経っても何もお返事しないのは失礼だと思い、
途中ですがお礼のみ申し上げに出てまいりました。
もう少し、頑張ってみます!
お時間を割いてくださいまして、本当にありがとうございました。
No.4
- 回答日時:
>「T住所」「都道府県」等には[ ]はいらないのですか?
とくに必要はありませんが、No3のソースを値集合ソースに
貼り付けるとAccessが勝手に[]をつけるかもしれません。
値集合ソースの設定はプロパティの右端をクリックすると
クエリビルダが表示されます。クエリを作る要領ででき
ます。設定後はそのまま閉じます。
閉じるときに設定の変更の保存をたずねるので「はい」
とし、フォームのデザインビューで保存ボタンを
押します。
また、このクエリビルダをSQLビューにして、No3のSQL文
を実際に合わせて訂正して貼り付けて、そのまま閉じ、
閉じるときに設定の変更の保存をたずねるので「はい」
とし、フォームのデザインビューで保存ボタンを
押します。
No.2
- 回答日時:
忘れ物がありました。
[都道府県]のコンボボックスの更新後処理で、
以下を設定してください。
コンボ0は[都道府県]のコンボボックスの名前です。
コンボ2は[市区町村]のコンボボックスの名前です。
実際に合わせて変更してください。
Private Sub コンボ0_BeforeUpdate(Cancel As Integer)
Me!コンボ2.Requery
End Sub
No.1
- 回答日時:
テーブルの名前を「T住所」とします。
[市区町村]のコンボボックスの値集合ソースを
以下のように設定します。
「フォーム名」はフォームの名前です。
「コンボ名」は[都道府県]のコンボボックスの名前です。
実際に合わせて変更してください。
SELECT T住所.都道府県, T住所.市区町村
FROM T住所
WHERE (((T住所.都道府県)=[Forms]![フォーム名]![コンボ名]));
[市区町村]のコンボボックスのプロパティで、
列数 2
列幅 0cm;2cm
連結列 1
のように設定してください。
piroin654さま、早速のお返事ありがとうございました。
ご教示のとおり入力してみましたが…できませんでした(泣)
都道府県のコンボボックスの値集合ソースは「GROUP BY~」を付け足した状態でいいのでしょうか?
「T住所」「都道府県」等には[ ]はいらないのですか?
お忙しいところ教えてくださったのに、力不足で申し訳ありません。
もう少し、教えていただいたやり方で試してみます。
お時間を割いていただき、本当にありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL うまくいきません教えてくださいお願いしますSQLです。クエリ構文です。 1 2023/07/07 12:39
- MySQL SQLです。こんな感じですか?あってますか? うまくいきません教えてくださいお願いします 1 2023/07/08 15:27
- MySQL 下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 神奈川県の市区町村の一覧。ただ 3 2023/05/01 18:01
- 関東 ※東北の人からのにわか質問で不快に来たりムカついたらすいません、悪気はありません。 東京方面に住む人 8 2022/08/03 18:17
- その他(国内) 1番2番3番…と争う? 2 2022/12/06 19:52
- 転職 長く続けられる好条件の求人でしょうか? 3 2023/07/12 18:45
- その他(宿泊・観光) 北海道札幌市 神奈川県横浜市 愛知県名古屋市 大阪府大阪市 京都府京都市 兵庫県神戸市 福岡県福岡市 3 2023/02/12 10:22
- その他(国内) 北海道札幌市 神奈川県横浜市 愛知県名古屋市 大阪府大阪市 京都府京都市 兵庫県神戸市 福岡県福岡市 2 2023/01/27 22:00
- その他(宿泊・観光) 北海道札幌市 神奈川県横浜市 愛知県名古屋市 大阪府大阪市 京都府京都市 兵庫県神戸市 福岡市福岡市 3 2023/01/29 18:14
- その他(悩み相談・人生相談) 東京・神奈川・千葉・埼玉以外で車がなくても電車やバスで生活できる都道府県は? 3 2023/02/14 12:59
このQ&Aを見た人はこんなQ&Aも見ています
-
とっておきの「夜食」教えて下さい
真夜中に小腹がすいたときにこっそり作るメニュー、こっそり家を抜け出して食べに行くお店… 人には言えない、けど自慢したい、そんなあなたの「とっておきの夜食」を教えて下さい。
-
スマホに会話を聞かれているな!?と思ったことありますか?
スマートフォンで検索はしてないのに、友達と話していた製品の広告が直後に出てきたりすることってありませんか? こんな感じでスマホに会話を聞かれているかも!?と思ったエピソードってありますか?
-
土曜の昼、学校帰りの昼メシの思い出
週休2日が当たり前の今では懐かしい思い出ですが、昔は土曜日も午前中まで学校や会社がある「半ドン」で、いつもよりちょっと早く家に帰って食べる昼ご飯が、なんだかちょっと特別に感じたものです。
-
おすすめのモーニング・朝食メニューを教えて!
コメダ珈琲店のモーニング ロイヤルホストのモーニング 牛丼チェーン店の朝食などなど、おいしいモーニング・朝食メニューがたくさんありますよね。
-
うちのカレーにはこれが入ってる!って食材ありますか?
カレーって同じルーから作っても、家庭によって入っているものや味が微妙に違っていて面白いですよね! 「我が家のカレーにはこれが入ってるよ!」 という食材や調味料はありますか?
-
アクセスで大分類・中分類・小分類を作っています。
その他(データベース)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~12/2】 国民的アニメ『サザエさん』が打ち切りになった理由を教えてください
- ・ちょっと先の未来クイズ第5問
- ・【お題】ヒーローの謝罪会見
- ・これが怖いの自分だけ?というものありますか?
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessのコンボボックスでリス...
-
アクセス:フォーム入力:【大...
-
Accessのコンボボックスの値が...
-
同一値集合ソースの複数コンボ...
-
Accessのフォーム(コンボボッ...
-
帳票フォームでのあるコンボボ...
-
SQLサーバーからひっぱるACCESS...
-
ACCESSでコンボボックスにSQLで...
-
ACCESS リストボックスの字の色...
-
Access サブフォームでの選択行...
-
ACCESS 複数のフォームから同一...
-
access クエリ yes/no型のクエ...
-
Excel 文字列から6桁の数値の抽出
-
PDFファイル/抽出許可され...
-
AccessでIDを入力したら他の項...
-
ACCESSでVBAから選択クエリの抽...
-
access別のテーブルを参照して...
-
Access2000、これはいったい・...
-
accessでオートナンバーを使わ...
-
エクセルで、抽出したデータだ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Accessのコンボボックスでリス...
-
ACCESS リストボックスの字の色...
-
Accessのコンボボックスの値が...
-
ACCESSでコンボボックスにSQLで...
-
帳票フォームでのあるコンボボ...
-
Accessのコンボボックスのデフ...
-
accessでオートコンプリート機...
-
Oracleで文字列型の時間を引き...
-
リストボックスの時はリンク先...
-
ACCESSクエリ抽出条件について
-
コンボボックスのリスト外入力...
-
アクセスで大分類・中分類・小...
-
Accessのフォーム(コンボボッ...
-
更新クエリで変数は使えない?
-
[Access2003]コンボボックスと...
-
ACCESSでフラグによる文字表示
-
パススルークエリのデータ件数...
-
accessでのリストボックス選択...
-
Accessのコンボボックスの”すべ...
-
Accessのフォーム解析
おすすめ情報