
生薬のデータベースを作っています。生薬の薬材料を主と部分に分けて管理しています。イチョウ(主)の葉(部分)や根(部分)、楓(主)の葉(部分)といった具合です。処方箋ではこのような色んな組み合わせが登場してきますので、それらの割合を統計しようと思っています。テーブルのリレーションは、処方箋ID、成分IDをさらに構成部分ID(主と部分)とリンクしたもの、そして薬材料名IDのあるテーブルです。クエリーで、成分IDのうち、指定した主が登場するものだけを出し、そのIDを使って、別のクエリで今度は指定した主以外、つまり、その主に使われている部分のみが出てるようにします。 それをさらにまた別のクエリでグループ・バイにして登場回数を見ています。
この方法では3つもクエリーを使うし、主の条件も毎回手入力でしないといけないので、生薬名IDの主の部分のID番号だけを、ループ処理で自動にこの処理をして、エクセルに出力したいです。
大まかな説明で分かりにくいですが、この作業のベース(もしくは参考)になるようなVBAを教えてもらいたいです。 ちなみにVBAは初めて2週間ほどの超初心者です。 よろしくご教授お願いします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
質問の要領に関する私見。
(1)専門領域的用語はなるべく、控える
異業界、未経験分野の人は質問を読んでいて、用語に気をとられて
コンピュター的な骨子に構成しにくい。
恐れをなす人もいるかもしれない。
(2)テーブルやクエリが4つ以上も出てきて、どれをさしているか頭に入 れにくい。
今後もしご質問があれば、コンピュター的なモデル実例にでも置き換える工夫をお願いしたい。コンピュターの勉強はこれを伴うべきものです。
-------
質問内容ですが、アクセスの人間の(手で)の操作が、
沢山のケースを処理しなければならず、
面倒で時間がかかる、
間違いやすい場合、
それを解決するのは、VBAによる自動化しかないと思う。
クエリはつまるところSQL文の実行です。
SQL文は文字列であって、その文字列をプログラムの中で、システム関連の
SE・プログラマが文字列を作っています。SQLサーバーなどで開発していれば、検索やファイルの読み・書き込みはそういうケースばかりのようです。
アクセスでは「パラメータクエリ」で大きな話題ですが、SQL文が前面に出る・主体のシステムでは、”SELECT””FROM" ”WHERE"というような語句以外は変数(ただしSTRING型)で定義され、そのつど中身がプログラム実行時にセットされ、それらが&で結合し表現されているのが頻出します。実行のつど都合のよいSQL文が作成され、実行されます。
場合によってはINPUTBOXで必要なフィールド名を人間が答えて、織り込む
型も複雑さを避けるために必要かもしれない。
アクセスでも、
(1)SQL文を正面から作って実行するタイプの勉強と、それを実務で少しずつ増やして、手操作型から離れていく。
普通の操作によって処理するとき、アクセスが作るSQL文が非常に勉強に
なると思います。エクセルのマクロの記録に似て役立つでしょう。
(2)VBAの制御構造になれる。
のがよいと思います。
しかし理系の方かも知れませんが、しばらくこの件に読書や勉強を集中し、6ヶ月や1年は覚悟しておいたほうがよいかもしれない。
なんでも周りに聞ける人がないと難しいものです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
Access 最後のレコードに到達するまでループ処理を行う方法
Access(アクセス)
-
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
ACCESS クエリの抽出条件に他のテーブルの値を参照する方法
Access(アクセス)
-
-
4
選択クエリで実行結果を非表示にできますか?
その他(データベース)
-
5
ACCESS クエリで重複データを最新の1件だけ表示
Access(アクセス)
-
6
ACCESS クエリで1から順番に番号を表示したい
Access(アクセス)
-
7
クエリのデータをテーブルに入れたい
Access(アクセス)
-
8
ACCESSテーブルを RecordSet以外で1レコードづつ読む方法
Visual Basic(VBA)
-
9
Accessの画面更新を一時的に停止する方法。
その他(データベース)
-
10
Accessでテーブル名やクエリ名一覧の抜き出し
Access(アクセス)
-
11
(ACCESS)条件に応じて、テキストボックスを表示・非表示設定
その他(データベース)
-
12
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
13
accessでクエリをExcelにエクスポートする時にファイル名に日付を追加したい
Access(アクセス)
-
14
ACCESS2010のVBAでフォーム内クエリのフィールド値を取得したい
Visual Basic(VBA)
-
15
AccessのWHERE句において、変数は使用できますか?
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「データ」のスペルはdataとdat...
-
クライアントに出すメールで、...
-
本当に下らないのですが、オ、...
-
独身男性はどうやって性欲をお...
-
丁寧語の「ご質問」「お問い合...
-
エクセル対数近似曲線のX値を代...
-
週に1回くらいムラムラする時あ...
-
Yahoo知恵袋の回答が心無いもの...
-
3X掛ける2という計算について
-
「ありますか」と「ありません...
-
あえてお尋ねします。生活保護...
-
iPad の分割キーボードで “フリ...
-
ヤフー知恵袋や教えてgoo以外に...
-
教えてgooの回答者
-
LINEで、質問されたから答えた...
-
GoogleChromeのプラグインで閲...
-
ここに良く有る、死にたいです,...
-
約束の後に別の用事を入れる友人
-
「ありますか」と聞く場合、Is...
-
質問したことに少しズレた回答...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
このアプリ、全く回答が来ない...
-
S AAA
-
知恵袋から移転して来た者です...
-
人の揚げ足ばっかりとってくる...
-
「何」が抜ける質問はなぜ横行...
-
こういうサイトってほんと回答...
-
質問に批判的な回答に対して、...
-
とかく、批判的な質問の (  ̄▽...
-
勉強嫌い・読書嫌いは一生治ら...
-
ここのサイトは 質問して得を得...
-
住み分けってなんでしょうか? ...
-
ヤフー知恵袋と教えて!goo 両...
-
全然知識ないのに回答しちゃう...
-
ここ
-
GWになると無礼な質問が増えて...
-
最近の教えてグーの回答者は、...
-
私は質問も回答も等分にするの...
-
おもしろい質問、おもしろくな...
-
クライアントに出すメールで、...
-
「データ」のスペルはdataとdat...
おすすめ情報