お世話になります。
素人が初心者向け参考書を片手に、顧客管理のデーターベースを作ってます。
下記は作ったテーブルの簡単な図です。
【商品区分】→【商品マスタ】→【会社別単価】←【顧客マスタ】
【仕入先】↑
:テーブルのフィールド:
【商品区分】(区分ID)(区分名)
【仕入先】(仕入ID)(仕入先名)
【商品マスタ】(商品ID)(商品名)(区分ID)(仕入ID)
【顧客マスタ】(顧客ID)(会社名)(会社名の頭文字)(住所)(電話&FAX)(取引開始年月日)
【会社別単価】(単価ID)(顧客ID)(見積日時)(商品ID)(数量)(単価)(備考)
主キーはIDでオートナンバーにし、各々のIDでリレーションをしています。
また、【商品マスタ】と【会社別単価】のIDをルックアップ設定しています。
で、【会社別単価】以外は入力が終了して、【会社別単価】をフォームを作り入力しようとしています。
※問題となっていること※
フォーム上から入力していますが、如何せん会社数が400社近く、商品数も10の区分があり、
各々に小物も合わせ30商品(合計10×30=300商品)あり、ちょっと入力が
面倒なことになっています。(フォームはウィザードを使用して作りました)
※やりたいこと※
【会社別単価】のフォームで、会社名を(頭文字)で抽出して(あ、い、う…で入力しています)、
コンボボックスを2つ使用して、「あ」を選ぶと頭文字「あ」の会社が出てくるようにしたいです。
同じように商品名の方も、商品区分で選んで、それに対応する商品群を表示したいです。
同じような質問があり、参考にしてやってみてますが、さっぱり分かりませんw
また、何か補足が必要であれば、補足しますので、すみませんが力を貸してください。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
[会社の頭文字]フィールドですが
[事業所の愛称(ニックネーム)]を仮名読みで登録すれば 喜ばれます。
同じ**会社でも 例えば 本店、佐野支店、横浜支店、群馬、とかあれば
[**ホンテン] [**サノ] [**ヨコ] [**グンマ]とか伝票を起こすとき
非常に便利で オペレーターに喜んで貰ってます。
ご参考に・・・
No.2
- 回答日時:
商品マスタ:
ID___区分____品名
1____区分A___商品A
2____区分B___商品B
※区分:1=区分A、2=区分B・・・実体は、1、2・・・N の整数。
得意先マスタ:
ID___名称________読み
1____喜多屋_____きたや
2____銀座屋_____ぎんざや
3____紀伊国屋__きのくにや
※検索用の列[読み]を持っている。
得意先別単価管理表:
商品マスタ_ID__得意先マスタ_ID__単価
__________商品A_____________喜多屋__\1,000
__________商品A_____________銀座屋__\1,200
__________商品B_____________喜多屋__\2,000
__________商品B_____________銀座屋__\2,400
※商品マスタ_ID:SELECT 商品マスタ.ID, 商品マスタ.品名 FROM 商品マスタ;
※得意先マスタ_ID:SELECT 得意先マスタ.ID, 得意先マスタ.名称 FROM 得意先マスタ;
以上のようなテーブル構造を仮定します。
<Me.コンボ_得意先一覧.値集合タイプ=値リスト>という設定の場合は、次のようです。
Private Sub 検索のための読み_AfterUpdate()
Dim strSQL As String
If Len(Me.検索のための読み & "") > 0 Then
strSQL = "SELECT 名称 FROM [得意先マスタ] WHERE 読み LIKE '" & Me.検索のための読み & "%'"
Me.コンボ_得意先一覧.RowSource = DBSelect(strSQL)
Me.コンボ_得意先一覧.SetFocus
Me.コンボ_得意先一覧.Dropdown
If Me.コンボ_得意先一覧.ListCount > 0 Then
Me.コンボ_得意先一覧.Value = Me.コンボ_得意先一覧.ItemData(0)
End If
End If
End Sub
これで、[読み]に対応した得意先マスタ.名称がコンボボックスのリストとなり先頭が選択されます。
問題は、ここで DBSelect関数なるものを利用している点です。
[イミディエイト]
? DBSelect("SELECT 名称 FROM [得意先マスタ] WHERE 読み LIKE 'ぎん%'")
銀座屋;
? DBSelect("SELECT 名称 FROM [得意先マスタ] WHERE 読み LIKE 'き%'")
喜多屋;紀伊国屋;
このように、DBSelect関数はコンボボックスやリストボックスの値をセットするための関数です。
しかも、ADOを使って自作した関数です。
また、SQL文の使用を前提とした関数です。
ですから、質問者の作法に合うかどうかはサッパリです。
まあ、「一つ、こういうやり方も経験してみるか?」であれば補足します。
No.1
- 回答日時:
こんにちわ。
やりたいことは、
コンボボックス01に「あ」を入れると
コンボボックス02に「アフラック」みたいに「あ」が付く会社名がリストアップされる。
で良いですか?
既に【顧客マスタ】テーブルに(会社名の頭文字)フィールドを作ってらっしゃるのが良いですね~
(1)まずクエリを作成します。
【顧客マスタ】テーブルの(会社名の頭文字)フィールドに抽出条件、
=[forms]![入力フォーム名]![コンボボックス01]
表示は(会社名)のみ。
を作成。
(2)コンボボックス02の値集合タイプを「テーブル/クエリ」にして値集合ソースに上記クエリを指定。
(3)コンボボックス01のイベント-更新後処理にイベントプロシージャ
コンボボックス02 = ""
Me.Refresh
を入れておくと、条件を変えたときに最新化されるようになります。
もう少し手を加えて・・・・
(3)のイベントに
コンボボックス02 = ""
Me.Refresh
Me.コンボボックス02.SetFocus
を追記して
(4)コンボボックス02のイベント-フォーカス取得時にイベントプロシージャ
Me.コンボボックス02.Dropdown
を入れると動きが快適になります。
お試しください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 経営情報システム accessでの請求管理について 12 2022/06/11 16:20
- その他(データベース) accessについて 2 2022/05/31 16:58
- その他(データベース) accessでの請求管理について 2 2022/06/13 21:51
- Excel(エクセル) 【条件付き書式】countifsで複数条件を満たしたセルを赤くする方法 2 2023/02/09 23:53
- その他(データベース) pythonでsqlight勉強中、クエリー結果の利用法教えて下さい 1 2022/04/28 20:38
- その他(データベース) c言語の問題です。これを踏まえてコーディングしたいのでおしえていただきたいです。 3 2023/08/03 09:27
- レディース 私の会社はコロナ禍でも業績を伸ばしており、 元々商売っけの強い会社です。 新顧客を取り込めており、 2 2022/08/04 22:04
- Excel(エクセル) Excel関数 情報引用する方法 4 2022/07/31 20:59
- 大学受験 大学の志望理由の添削をお願いします! 私は将来起業をしたいと考えております。 そのため貴学の商学 部 7 2022/09/17 14:45
- スーパー・コンビニ 一斉値上 スーパーの食料品 値上や単価の仕組みは? 4 2022/06/01 16:18
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXISTSを使ったDELETE文
-
Accessの実行時エラーについて
-
SQL文で、合計が0のレコードを...
-
アクセスにて月末日付を取得し...
-
アクセス フィールド名に変数...
-
差し込み後、元データを変更し...
-
エクセルで最後の文字だけ置き...
-
外部参照してるキーを主キーに...
-
フィルターかけた後、重複を除...
-
1、Rstudioで回帰直線を求める...
-
カーソル0件の時にエラーを発生...
-
SQLで特定の項目の重複のみを排...
-
for whichの使い方
-
datetime型でNULL値を入れたい。
-
重複していないレコードの抽出...
-
SELECT 文 GROUP での1件目を...
-
INSERT文でフィールドの1つだ...
-
access2003 クエリSQL文に...
-
SQLServerで文字列の末尾からあ...
-
1日に1人がこなせるプログラム...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SQL文で、合計が0のレコードを...
-
EXISTSを使ったDELETE文
-
Accessの実行時エラーについて
-
ACCESS ツリービューの作り方
-
日付により変動する「単価」を...
-
前月の取得について
-
ACCESS 商品毎の最新の単価を設...
-
アクセス★非課税、課税の合計金...
-
AS400にてサブファイルレコード...
-
アクセス フィールド名に変数...
-
ユニオンクエリ?レポートにて...
-
ACCESSでクエリ作成時複数のフ...
-
Access2013で商品に複数の単価...
-
アクセスにて月末日付を取得し...
-
異なるデータベース間のテーブ...
-
AccessVBA データのエクスポート
-
フィールドの数値を四捨五入の...
-
FROM句にサブクエリ使えませんか
-
最大値を含むレコードの抽出
-
無駄に見える結合の回数を減ら...
おすすめ情報