[過去ログ] Access総合相談所 29 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
58
(1): 2019/10/20(日)03:27 AAS
>>57 それは何用でしょうか。
担当者の成績管理ですか。
顧客コード|担当
1|A
1|B
というマスターがあり、
実績テーブルに
顧客コード|売上額
1|¥1000
1|¥500
省10
59: 2019/10/20(日)07:57 AAS
>>58

イメージとしては1番下です。

顧客コード|売上額|担当
1|¥1000|A、B
1|¥500|A、B
みたいな加工をしたいということでしょうか。

そのとーりです。

何用かと言えば仕事の仕入データの管理で
メーカーから仕入れてお客様まで直送したデータを
担当が2人持ってるところがあり
省5
60
(1): 57 2019/10/20(日)08:00 AAS
連投ですいません

accessのリレーションで
内部結合やら外部結合をすると

顧客コード|売上額|担当
1|¥1000|A、B
1|¥500|A、B
はならずに

レコードが増えて
顧客コード|売上額|担当
1|¥1000|A
省5
61
(1): 2019/10/20(日)08:04 AAS
>>60
アクセスは横方向に伸ばす事に弱い
vbaが必要になる
62
(1): 57 2019/10/20(日)08:50 AAS
>>61
そーなんですね
access vbaはよくわからず。

やっぱりエクセルでどーにかした方が早そうですね
1万行とかで、
エクセルが開くのが遅すぎてaccess使ってみたいと思ったのです

少し考えてみます
63: 2019/10/20(日)10:28 AAS
>>62
ってか、。>>9>>17にそのコードがある
64
(1): 2019/10/21(月)10:34 AAS
これってそもそもの問題として1000円と500円のものをAとBが別に売ってるか一緒に売ってるかの区別ってどうやってしてるんだろう?
区別するフィールドあるんならそれで結合できるんでは
てかちゃんとあるよねえ?なかったら2重に計上してる可能性もあるから大問題だよ
65
(1): 2019/10/21(月)16:57 AAS
かなり泥臭いやり方(VBAなし版 ただし、
仕入担当100人といった無限ではないものとする)
3個くらいに分けて書きますよ。
テーブル名 master
ID(auto)|仕入先ID:数値 |担当者:文字列
1 1 A
2 1 B
3 2 C
4 2 D

クエリー1段階目 同じ仕入先IDのなかでindexをつける Q_master
省3
66: 2019/10/21(月)16:57 AAS
クエリー2段階目 クロス集計っぽく担当1、担当2、担当3と列を振り分ける
グループ化して重複をまとめる
Q_masterCross
"セレクト" Q_master.仕入先ID,
DLookUp("担当者","Q_master","仕入先ID=" & [仕入先ID] & " AND index=1") AS 担当者1,
DLookUp("担当者","Q_master","仕入先ID=" & [仕入先ID] & " AND index=2") AS 担当者2,
DLookUp("担当者","Q_master","仕入先ID=" & [仕入先ID] & " AND index=3") AS 担当者3
FROM Q_master
GROUP BY Q_master.仕入先ID,
DLookUp("担当者","Q_master","仕入先ID=" & [仕入先ID] & " AND index=1"),
省2
67: 2019/10/21(月)16:58 AAS
クエリー3段階目 文字結合 Q_concat
"セレクト" Q_masterCross.仕入先ID,
[担当者1]
& IIf(IsNull([担当者2]),"","、" & [担当者2])
& IIf(IsNull([担当者3]),"","、" & [担当者3])
AS 担当者リスト
FROM Q_masterCross;
68
(1): 2019/10/21(月)19:23 AAS
自己レス 2段目 わざわざdlookup使う必要もないな。
”セレクト” Q_master.仕入先ID,
Max(IIf([index]=1,[担当者],Null)) AS 担当1,
Max(IIf([index]=2,[担当者],Null)) AS 担当2,
Max(IIf([index]=3,[担当者],Null)) AS 担当3
FROM Q_master
GROUP BY q_master.仕入先ID;
69: 2019/10/22(火)12:35 AAS
>>68
定義域集計関数は遅いので
それの方が良いですね。
70
(3): 57 2019/10/22(火)16:45 AAS
皆様ありがとうございます。
メーカーのデータ
届先コード、届先名称、  商品名、仕入れ金額
1000、田中商店a、    たまご、100円
2000、田中商店b、    肉、300円
3000、鈴木運送事務所  野菜、200円
1000、田中商店a、    肉、300円

会社の担当データ マスタのような物
得意先名 届先名、     届先コード 担当者
田中商店 田中商店a、    1000 A
省14
71: 57 2019/10/22(火)16:59 AAS
>>64

売上データとして

得意先名 担当 商品名 〔掲載されてないけど〕
田中商店 A たまご200円 〔田中商店a〕
田中商店 A 肉400円    〔田中商店b〕
鈴木運送 B 野菜300円  〔鈴木事務所〕
山田屋  c 肉600円   〔田中商店b〕

とあるので色々まぜたら識別は可能です
手作業ですが、、、
72
(1): 2019/10/22(火)18:29 AAS
>>70
一例だけど以下のようにいくつかのテーブルに分けて構成すべきだと思う。

T_得意先
得意先コード(主キー),得意先名

T_届先
届先コード(主キー),届先,得意先コード

T_担当
担当者コード(主キー),担当者名

T_商品
商品コード(主キー),商品名
省7
73
(1): 2019/10/22(火)22:19 AAS
基幹システムから出力したプルーフリスト(CSVとかexcelとか)を
再加工する試みですか。
用例がわりと冗長的なので。さらにいうと、架空とはいえ
仕入れと売り上げのプロセスの違いを理解しているか、疑問が残る。
仕入れの段階では「届け先」は関係ないはず。

71に示す実績(ようするに売り上げ伝票)に届け先がリレーショナル
データとして格納(または表示)されていないのが、
そもそもの問題だと思います。
伝票入力時に届け先項目はありますか?(摘要欄で届け先を
テキスト入力するのではなく)
省3
74
(1): 57 2019/10/22(火)23:12 AAS
>>73
ご指摘ありがとうございます。
確かにデータが色々ダメなのです。
会社内にホストコンピューター?と言うものからデータを取り出してもらうのですが
社内の少しだけパソコンに詳しいひとが頑張って取り出してるレベルなので
データがこれ以上頑張れないと言われたので自分でなんとか繋げようとしている状況です。
外部委託して金を払ってでもして欲しいと心から思っております
75
(1): 2019/10/23(水)00:46 AAS
>>74
ACCESSの話を離れ、ほぼ組織論になってくるけど
一連の書き込みを見てると、
・担当者とは(おそらく)提案営業と商品手配、
小売へのデリバリーまでやっている人。
・基幹システムでは売り上げ伝票に配送先が紐付けされていないか
プルーフリストでの出力が困難。
・ACCESSを使って知りたいのは、得意先ではなく「配送先」の
実績をもとに、誰が仕入れたのかの担当者の絞り込み。

私の中の小売り商流の概念からすると、かなり変わってる。
省15
76
(1): 57 2019/10/23(水)01:53 AAS
>>75
基幹システムというのは
おそらくコボルで動いています
最新のERP?とかではないです。
データ見るのも昭和の黒い背景の緑の線で描かれた画面からデータを見ます

データを出すのにコボルプログラムを書かないとダメだから難しいと毎回言われます。
過去に作られたバッチファイル?が何かで出せるやつだけと、少し修正して出せる程度の物しか出てきません

担当を調べるというよりは担当者毎の粗利を調べるのも手計算みたいなものです
仕入れがあり、売上もわかるけど、
これはどっちが売ったのか?
省2
77
(1): 57 2019/10/23(水)01:58 AAS
>>65

>
> クエリー1段階目 同じ仕入先IDのなかでindexをつける Q_master
> "セレクト" master.仕入先ID, master.担当者,
> DCount("仕入先ID","master","担当者<""" & [担当者] & """ AND
> 仕入先ID=" & [仕入先ID] & "")+1 AS [index] FROM master;

とりあえず、これがなんとなく自分の力で出来そうなイメージです。、まず同じなのに重複しているものに番号振ってみます。
1-
あと 925 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.277s*