質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.61%

  • VBA

    1725questions

    VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

  • Access

    409questions

    Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

【ACCESS】日付範囲を指定してグラフで表示したい。

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 356

tera_taro

score 34

 前提・実現したいこと

日付の範囲を入力し検索すると、部署事の納品済みの製品がグラフで表示されるようにしたい。
現在日付から1年間の範囲を自動で取得する方法も知りたい。

良い参考などあればご教授お願いします。

 発生している問題・エラーメッセージ

クエリの条件でBetween #2018/04/01# And #2019/03/31#のように設定していて毎回条件を修正するのは面倒。
データテーブルで金額を通貨型で表示できない。
データテーブルで日付を表示したいが、Apr-18のように表示されてしまう。
クエリの配置をずらしたりするとデータシートのデータが見えなくなる。

 該当のグラフ

ークエリー
イメージ説明
説明: a:購買テーブル b:購買明細テーブル c:部署テーブル
KINGAKUの合計はb:購買明細にある金額の総合計の事です。
NOHIN_YMはNOHIN_DATEには年月日が元々入っているので、年月までの情報でグループ化しています。
Where条件としては納品日が記入されているBetween #2018/04/01# And #2019/03/31#の範囲で、
購買明細(b)の管理番号があるデータを条件としています。
ーフォームー
イメージ説明
ーグラフの値集合ソースー
イメージ説明
説明:クエリを参照しています。
NOHIN_YMは年月の日付、BUSHO_NAMEは部署名、
KINGAKUの合計の合計は購買明細の総合計をさらに合計したものです。
管理番号1 総合計1000
管理番号2 総合計2000
管理番号3 総合計3000
総合計の合計6000
グラフではその総合計の合計を部署事に指定した日付範囲で表示しています。

 試したこと

クエリの条件に1年間のデータを取得するように

IIf(Format$(Date$(),”mm”)=”01″ Or Format$(Date$(),”mm”)=”02″ Or Format$(Date$(),”mm”)=”03″, Format$(DateAdd(“yyyy”,-1,Date()),”yyyy”), Format$(Date$(),”yyyy”))


を入れてみたが、何も表示されない。

 補足情報(FW/ツールのバージョンなど)

環境:Windows10 ACCESS2016

追記
ーテーブルー

部署テーブル
イメージ説明

購買テーブル
イメージ説明

購買明細テーブル
イメージ説明

ワーク購買明細テーブル
イメージ説明

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • module_jung

    2018/05/08 12:01

    『部署毎の納品済みの製品』がどういう項目からどういう条件でわかるのか、などがわからないので、どこから考えたらよいのか難しいです。そのあたりも書いてください。

    キャンセル

回答 1

checkベストアンサー

+1

会計年度は、実日より3カ月を引いたものの年で算出できます。
求めた年の4/1~翌年の3/31までの範囲とします。

Between CDate(Format(DateAdd("m", -3, Date()), "yyyy") & "/04/01") And CDate(Format(DateAdd("m", -3, Date()), "yyyy") + 1 & "/03/31")


ですけど、年度の締めが終わってから出力しようとしても出力できなくなるので、年度をパラメータとした方が良いのではないでしょうか。

追記

NOHIN_DATEが文字型ということなので、格納される文字列の書式は'''yyyy/mm/dd'''と想定して変更しています。

Between Format(DateAdd("m", -3, Date()), "yyyy") & "/04/01" And (Format(DateAdd("m", -3, Date()), "yyyy") + 1) & "/03/31"

追記2

納品日:
[フィールド] 日付:Format(NOHIN_YM,"yyyy/mm/dd")
金額:
[フィールド] KINGAKUの合計の合計:Format(Sum(KINGAKUの合計),"\\#,##0")
[集計]演算

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/05/09 09:15

    クエリのwhere条件に元々ある
    Between #2018/04/01# And #2019/03/31#
    を記載してくださったSQLに変更しましたが、
    「抽出条件でデータ型が一致しません」言われて実行できませんでした。

    年度をパラメータとは年の部分だけ条件にするという事でしょうか?

    キャンセル

  • 2018/05/09 09:46

    >年度をパラメータとは年の部分だけ条件にするという事でしょうか?
    そうです。
    抽出の年度を入力する、抽出条件のダイアログ画面を作成して対応などが考えられます。

    キャンセル

  • 2018/05/09 10:14

    追記してもらったSQLを試してもデータ型が一致しないと言われます。

    入力中の購買明細のテーブルと登録完了した購買明細のテーブルがあるのですが、
    入力中の購買明細のテーブルでは日付型で、
    登録完了した購買明細のテーブルでは文字型になっていたりするのが原因だったりするのでしょうか?

    キャンセル

  • 2018/05/09 10:32

    エラーはDATE()となっていなかった為、貼り付け時に文字列に変換されるのが原因でした。
    両方共修正しましたので、確認下さい。

    キャンセル

  • 2018/05/09 10:48

    修正されたSQLを試した所動作確認できました。

    現在日付から1年間の範囲を自動で取得する方法も知りたい。
    という件に関して解決しました。
    ありがとうございます!

    キャンセル

  • 2018/05/09 11:03

    他ってこれですか?
    1.クエリの条件でBetween #2018/04/01# And #2019/03/31#のように設定していて毎回条件を修正するのは面倒。
    2.データテーブルで金額を通貨型で表示できない。
    3.データテーブルで日付を表示したいが、Apr-18のように表示されてしまう。
    4.クエリの配置をずらしたりするとデータシートのデータが見えなくなる。

    キャンセル

  • 2018/05/09 11:10

    日付の範囲をテキストに入力して検索させるというやり方も今後
    やる予定にはなると思いますが、まず解決したいのが
    購買納品済みグラフの下部にあるデータテーブルで、
    >2.データテーブルで金額を通貨型で表示できない。
    >3.データテーブルで日付を表示したいが、Apr-18のように表示されてしまう。
    という問題を解決したいです。

    キャンセル

  • 2018/05/09 11:10 編集

    1.についてはコメントで提示(画面+パラメータ)しています。
    2.については具体的な項目名を。(多分デザインでの書式を通貨にすれば良い)
    3.については具体的な項目名を(属性は日付型?多分これも書式で解決)
    4.については、スクリーンショットなどがないとどういったことなのか分かりません

    キャンセル

  • 2018/05/09 11:36 編集

    >1.についてはコメントで提示(画面+パラメータ)しています。
    >抽出の年度を入力する、抽出条件のダイアログ画面を作成して対応などが考えられます。
    日付の範囲の自動取得が解決されたので、試しておらず、ひとまず保留にしています。
    この件はまた自分で調べます。

    >2.については具体的な項目名を。(多分デザインでの書式を通貨にすれば良い)
    グラフの値集合ソースにあるKINGAKUの合計の合計という項目という回答
    で良いでしょうか?
    そこで書式変更して保存しても書式が元に戻ってしまいます。
    >3.については具体的な項目名を(属性は日付型?多分これも書式で解決)
    グラフの値集合ソースにあるNOHIN_YMという項目という回答で良いでしょうか?
    そこでも書式変更しても元に戻ってしまいます。
    >4.については、スクリーンショットなどがないとどういったことなのか分かりません
    日付の範囲を修正した結果、クエリの配置をずらしても見えなくなるという
    事象は解決していました。

    キャンセル

  • 2018/05/09 12:09

    2.3.についてはグラフに表示される内容ということですか。
    グラフに書式というプロパティがありました?
    グラフ側には書式は伝わらないので、値集合ソース内で文字列として処理する必要があります。回答に追記します。

    キャンセル

  • 2018/05/10 13:52

    グラフに表示される内容で合っています。
    >グラフに書式というプロパティがありました?
    値集合ソースのプロパティシートの書式と、
    グラフを右クリック→グラフオブジェクト→編集
    →データシートの表示→書式変更したい範囲選択
    →右クリック:表示形式 で書式の変更を試して
    いましたが、設定が保存されず困っていました。

    追記されたことを実行すると日付、金額共に
    うまく表示されるようになりました。
    ありがとうございました。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.61%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

  • 受付中

    C++のCAD上で作成した図形の輪郭切り取り

    C++ ```###前提・実現したいこと CADで図のような立体画像を作成し、この画像の赤い部分のような、輪郭画像を抽出するプログラムを作成しました。このプログラムを使用し現在

  • 受付中

    文字列を揃えて表示したいが、eclipseの設定方法が分からない

    文字列を揃えて表示したいです。 例えばこのようにです。 家のeclipseでは、上記のように表示されるのですが、学校のeclipseで実行すると パイナップ

  • 解決済

    SQLパラメーター式テーブルの値をand検索する

    実現したいこと fruit_id : 1 -> apple fruit_id : 2 -> mikan fruit_id : 3 -> banana テーブル名 : f

  • 解決済

    ACCESS クエリでの一部重複?の除外方法について

    前提・実現したいこと こんにちは、質問タイトルが適格でないかもしれませんが宜しくお願いいたします。 通販事業をしており、商品の仕入から販売までのデータベースをACCESSの

  • 解決済

    Monacaでtimepickerの実装

    前提・実現したいこと MonacaでiOS/Andriod両方に対応しているアプリケーションを開発していて、アラーム機能を実装しようと思い、Monacaでtimepickerのよ

  • 解決済

    mysqlのdate型をハイフンではなくスラッシュに変える

    前提・実現したいこと mysqlに保存したdate型はYYYY-MM-DDで出力されますが、 これをYYYY/MM/DDのようにハイフンではなくスラッシュ区切りで表示させたいと

  • 解決済

    atom自動補完やり方

    これのプログラミング版になります 今いろいろ調べているのですが、atom自動補完ができません。宜しくお願い致します。 リンク内容 autocomplete-p

  • 受付中

    ER図について

    つぶやきアプリを作っているのですが、 ER図を作るとする例えばどんなものがありますか?? サンプル程度でいいので教えていただきたいです

同じタグがついた質問を見る

  • VBA

    1725questions

    VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

  • Access

    409questions

    Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。