• ベストアンサー

アクセスで単価を判断させるには

 お尋ねいたします。 手書き納品書を整理しアクセスで請求書を 作成中なのですが、単価のテーブル、クエリを どのように、考えて作成すればよいかアドバイスを お願いします。  商品は100種類位有り、定価(積算単価)は 決めていますが、販売先によりバラバラです 販売先に掛け率を決めて販売単価を決めるのではなく その時々で決めています。  エクセルのように行頭に商品名、 列頭に販売先名を入れてVLOOKUP関数で 販売先別単価を決めるような方法有りますか?  アクセスは勉強中でエクセルのワークシートに 当たるのはクロス集計のようなのですが どの様に使用したらよいのか要領を得ません よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • bonaron
  • ベストアンサー率64% (482/745)
回答No.2

請求クエリから「製品Tbl」を削除し「単価TABLE」を追加してください。 請求クエリ:日付(納品書Tbl)、伝票番号(納品書Tbl)、請求先(納品書Tbl)、製品名(納品書Tbl)、数量(納品書Tbl)、単価(単価TABLE)、金額(数量*単価) 両テーブルの、製品ID、販売先IDをそれぞれ結合します。 結合プロパティは、どちらも「納品書Tblの全データと 単価TABLEの同じ結合フィールドのレコードだけを含める」 で良いと思います。

acenoh
質問者

補足

ありがとうございます できました。 固定観念に囚われていました。 一つのテーブルからの結束プロパティは1本だけかと 勘違いしていました。

その他の回答 (1)

回答No.1

例えば、 販売先TABLE(販売先ID、販売先名・・・) 製品TABLE(製品ID、製品名・・・) 単価TABLE(製品ID、販売先ID、単価) でやれば如何でしょう?

acenoh
質問者

補足

早速、お返事いただき有難うございます。 現在、テーブルは 納品書Tbl:日付、伝票番号、請求先、製品名ID、製品名、数量 の項目 製品Tbl:製品ID、製品名、定価、の項目で クエリは 請求クエリ:日付(納品書Tbl)、伝票番号(納品書Tbl)、請求先(納品書Tbl)、製品名(納品書Tbl)、数量(納品書Tbl)、単価(製品Tbl)、金額(数量*単価) 結合プロパティは納品書Tblの製品名IDと製品Tblの製品名IDを納品書Tblの全データと 製品Tblの同じ結合フィールドのレコードだけを含めるです。 一物一価で自分の求めてるのとは違うのですが、アドバイスで追加のテーブル 単価TABLE(製品ID、販売先ID、単価)をどの様に結合させれば良いのでしょうか? よろしくおねがいします。

関連するQ&A

  • アクセスに移行したいのですが

    はじめまして エクセルで納品書発行プログラムを自作しています。 入力は日付、時間、販売先、商品名、数量、配送先、等 単価表シートと組み合わせ金額を表示していますが 月次繰越処理をしないとエクセルでは重たくなり (1日60件位の入力で年間20,000件程度) アクセスで年度処理だけで済まそうと思いアクセスを 勉強中です。 参考書には1物1価の価格表でのクエリーは見当たるのですが、 当方では販売先ごとに商品単価が違います エクセルだとindex関数等で解決しているのですが アクセスではどの様に考えればよいのでしょうか? (関数でもあればお教え下さい) 質問が漠然としていて伝わりにくいかも知れませんが 考え方だけでもお願いします。

  • ACCESS 商品毎の最新の単価を設定するには?

    ACCESS 商品毎の最新の単価を設定するには? 既に運用しているデータベースで不具合があり、以下のようなクエリを作りたいと考えていますが、データベースを作成してからかなり時間も経ってしまっており、自力で形にすることができません。 お知恵をお借りしたいと思いますので、よろしくお願い致します。 1.テーブル構成 [T_商品マスタ]--商品IDでリレーション設定--[T_単価マスタ] T_商品マスタのフィールド 商品ID(キー/数値型) 商品名1(テキスト型) 商品名2(テキスト型) 商品分類ID(数値型) 定価(通貨型) 取扱中止(Yes/No型) 販売単位(テキスト型) 備考(メモ型) T_単価マスタのフィールド 価格履歴ID(キー/オートナンバー) 商品ID(数値型) 仕入単価(通貨型) 仕入先ID(数値型) 販売単価(通貨型) 変更日(日付/時刻型)…Now()にて変更を入力した日付及び時刻を記録しています。 [Q_商品最終単価]…現在運用していますが、仕入単価及び販売価格が[T_単価マスタ]の最新のものにならない不具合が生じています(クエリ内の集計で"最後"を使用していますが最後=最新ではないとか、、、) クエリ内で設定している項目 商品ID 商品名1(単価を登録する度に変更することは禁止) 商品名2(単価を登録する度に変更することは禁止) 仕入単価(変更の度に[T_単価マスタ]の仕入単価欄に単価を入力して更新) 販売価格(仕入価格を入力するとフォーム上で自動計算) 変更日(仕入価格を入力した日時) クエリ時のイメージ 商品ID  商品名1  商品名2  仕入単価  販売単価  変更日 0001   うどん   稲庭    100     200     2010/01/01 10:10:16 0002   うどん   讃岐    150     300     2010/01/25 11:12:50 0003   そば    十割    200     400     2009/12/15 15:30:10 . . . 伝票入力時にこのクエリを用いて商品IDを入力することで、最新の単価を呼び出すようにしていたつもりでしたが、集計クエリの"最後"に信頼性が無いことがあるそうで、必ずしも最新の単価になっていないと発覚し冷や汗をかいております。 Q_商品最終単価の項目はそのままで、商品ID毎に最新の変更日に基づく最新の単価をクエリできる方法をご教授願います。

  • 請求書の単価

    少しずつ、みなさんのアイデアをいただき、 請求書発行プログラムを作成中です 今度は、100件程度の製品名と販売先が200件位ですが  前回、アドバイスいただいた 単価TABLE(製品ID、販売先ID、単価)を作成しましたが このテーブル完成させるには100件×200件で20,000行になってしまいます 個々の販売先で全ての製品が出るわけではないので、  納品書で出てきた順に登録する様に考慮中です。 納品書Tblと単価TABLEで選択クエリを作っていますが 単価登録されていない時、警告を出し単価登録フォームが 表示され、そこで単価登録させるようにしたいのですが どのように考えていけば良いか道筋をアドバイスいただければ幸いです よろしくお願いいたします。

  • 〔VBA・マクロ〕EXCELからACCESSデータをひっぱるには?

    当方のレベルはアクセス初級者(基本的な操作)、 エクセルはごく簡単なVBAをいじる中級者です。 アクセスにて顧客マスター、商品マスターを作成しています。 エクセルで納品書を作成しています。 現状では外部データの取り込みをつかって エクセルシートに顧客データ(シート1)と商品データ(シート2)を 取り込んだ後に、納品書(シート3)でシート1、2に VLOOKUP関数をかけて、納入先と商品情報を 伝票におとしこんでいます。 こんなまどろっこしいことをせずに、 エクセルからアクセスのテーブルへ直接データを取り込む方法は ないものでしょうか? どなたかよろしくお願いいたします。

  • アクセス テーブル 列を行にしたいのですが・・・・

    アクセス初心者ですが、ご教授頂けませんでしょうか?<abab123> ・2つのテーブルがあります。 ・入力者の都合上、どうしても行入力にできず、列入力になってしまった為、 テーブルを作り直す必要があります。 < 数量 テーブル > 機器| 商品1|商品2|・・ |商品100 ----------------------------------- 1 | 10 | 20 |・・| 30 2 | 40 | 50 |・・| 60 ・ ・ 10000| 70 | 80 |・・| 90 < 単価 テーブル > 機器 |商品1 |商品 2|・・|商品100 -------------------------------------- 1 |1,000 | 2,000 |・・| 3,000 2 | 4,000 | 5,000 |・・| 6,000 ・ ・ 10000| 7,000| 8,000 |・・| 9,000 ・こんなテーブルにしたいのですが。 < 結合 テーブル > 機器 |  商品 | 数量 | 単価 ---------------------------------------- 1 | 1 | 10 | 1,000 1 | 2 | 20 | 2,000 1 | ・ | ・ |  ・ 1 | 100 | 30 | 3,000 ・ | ・ | ・ | ・ ・ | ・ | ・ | ・ 10000 | 100 | 90 | 9,000 □ EXCELで、行列を入れ替えようと思ったのですが 機器(10,000) X 商品(100)= 1,000,000 行となり、 65,536行 の EXCEL2003では、断念しました。 VBAも考えましたが、16回(=1,000,000/65,536)、 EXCEL を ACCESSテーブルに貼り付けるのも??? Webで、アクセスSQL・・ユニオン・・・などがヒットするのですが、 良く解らなくて。。。です。 結合テーブルを効率的に作成する方法を、ご教授頂けませんでしょか?   宜しくお願い申し上げます。 □ アクセスはデーター処理で毎日使用しておりますが、 難しい処理をする訳ではなく、 テーブル作成、クロス集計等から、EXCELへ書き出し、 EXCELの資料を作成したりしています。

  • ACCESSのクロス集計クエリについて

    ACCESS2000のクロス集計クエリで超初歩的な質問なのですが、、 こんなテーブルがあります。 メーカー  商品名 A社    テレビ B社    テレビ A社    ラジオ A社    テレビ これをACCESSのクロス集計クエリでこんな感じにしたいです。 メーカー  商品名   集計 A社    テレビ   2 A社    ラジオ   1 B社    テレビ   1 エクセルでは、行見出しに「メーカー」と「商品名」を入れて値に「メーカー」か「商品名」どちらかを入れれば希望通りの結果になるのですが、ACCESSのクロス集計では、列見出しに必ず入れないとエラーが出るようです。入れなくても良い方法かもっといい方法がありましたらご教授ください。   

  • Accessクロス集計クエリで

    Accessのクロス集計クエリで下記のような商品名・納品週を行見出し、受注状況を列見出しにして集計クエリを作ったのですが、受注状況1 受注状況2の合計を列に増やしたいのですがどうすればよろしいでしょうか。 商品名 納品週  受注状況1 受注状況2 受注状況3 合計 ------------------------------ A   2007/03/25   10      15       0     25 A   2007/04/02   15      12       15     42 A   2007/04/09    0      10       7     17 B   2007/03/25   11       0       11     22 B   2007/04/02   10      15       0     25

  • エクセルで顧客毎に単価が違う場合の入力

    質問させていただきます。 例えば、50程の顧客が居るとして商品によって単価が違ったりする場合、 シート1に顧客ごとの商品名や単価を書いた表を作ったとします。 で、シート2で伝票などを作るとしたとして、その顧客名での商品名を 入力すると、その単価が自動的に入力する。というようないい方法は あるでしょうか?VLOOKUPを使ったりするのかなぁ、などと思ったり するのですが、単価が違ったりするという部分でよく分からなくて。 説明がうまく出来ていないかもしれませんが、よろしくお願いします。 エクセルは得意ではないので、図解入りで似たような説明がしてあるような ところがあれば教えてもらえると有り難いです。

  • アクセス クロス集計結果について

    クロス集計クエリを使っています、Offices Linkボタンを使った方法でクロス集計結果と同じデザインでEXCELに出せるのですが、VBAを使い、EXCELのファイル名を指定した方法で出す事は可能でしょうか?ご教授下さい。アクセス2003使用

  • ACCESSかEXCELで集計について

    MS AccessとEXCELでの集計をおしえてください。 日付(時間付)、店舗、販売員、区分、商品名(毎日新しいものが計上される)、売上個数のデータが大量にあるとして、日付(時間を除く)毎にそれぞれを集計していきたいのですが、どうすればよいでしょうか? 販売員、商品名が大量にあるため、エクセルではSUMIFなどの関数を使わず一気に集計をしたいのです。 10/1 15:00、大阪、販売員A、イ、商品A、5 10/1 15:05、大阪、販売員A、イ、商品A、10・・・ -------------------------------------------------- 10/1、大阪、販売員A、イ、商品A、15 ・・・としたい AccessとEXCEL、それぞれの方法をおしえていただけませんか。 よろしくお願いいたします。 バージョン:2010 / OS:windows7 アクセスは基本操作(ちょっとアヤシイ・・・)とSQLが若干使える程度です

専門家に質問してみよう