• 締切済み

Access 予めクエリを作っておきたい

お世話になります。 毎月、2つのExcelをインポートし、シリアル番号で紐付けて エクスポートしております。 ファイルA  ID 1月 2月 3月 4月 メーカー 型番 シリアル番号 価格・・・ ファイルB  ID メーカー 型番 シリアル番号 価格・・・ ファイルAとBをインポートし、シリアル番号で紐付けて  ID 2月 3月 4月 5月 メーカー 型番 シリアル番号 価格・・・ とし、エクスポートしてます。 ※ファイルB全件に対して、ファイルAを付加するイメージです。  また5月のフィールドを追加し(Null)、4ヵ月分のみ載せるので1月は不要。 なお、エクスポートしたファイルは翌月のファイルAになります。 <質問> 上記のように、毎月ファイルAの見出しが変わる為、毎回クエリを 作成しておりますが、手間がかかります。 このようなケースでは予めクエリを作成しておくことは出来ない のでしょうか。 例えば6月のファイルAは、  ID 2月 3月 4月 5月 メーカー 型番 シリアル番号 価格・・・ で、  ID 3月 4月 5月 6月 メーカー 型番 シリアル番号 価格・・・ としてエクスポートしなければならないので、クエリとしては  ID 今月-3ヵ月 今月-2ヵ月 今月-1ヵ月 今月:Null メーカー・・・ みたいにすればよいのでしょうか。 だとしたら、「今月-xヵ月」の部分はどのような記述になるので しょうか。 ご教示の程、宜しくお願い致します。

みんなの回答

  • piroin654
  • ベストアンサー率75% (692/917)
回答No.3

>例えば6月のファイルAは、 > ID 2月 3月 4月 5月 メーカー 型番 シリアル番号 価格・・・ これらはExcelでの列の並びですよね。それで、これらの フィールドはAccessでは、テーブルでのデータはどのように 存在していますか。 Excelへの書き込みはどのような方法でファイルのヘッダ などを書き込んでいるのでしょうか。 とくに三つの「月」のフィールドについてですが。 それと、 >クエリのデザイン画面のフィールドの箇所で、 >Format・・・と記述すると、その文字列がフィールド名になって >しまいます。。 >また、式1:format(dateadd("m",-3,date),"m") & "月" >とすると、クエリ結果が全て「3月」という文字列になってしまいます。 ですが、クエリの様子がわからないので、少し説明をいただけたらと。

naoto0216
質問者

補足

度々ありがとうございます。 仰る通り、 > ID 2月 3月 4月 5月 メーカー 型番 シリアル番号 価格・・・ はExcelの見出しで、インポート後はそのままフィールド名となります。 >Excelへの書き込みはどのような方法でファイルのヘッダ >などを書き込んでいるのでしょうか。 >とくに三つの「月」のフィールドについてですが。 ちょっと、意味を理解できないのですが、エクスポートのことでしょうか? 作成したクエリを右クリック⇒エクスポート です。 >ですが、クエリの様子がわからないので、少し説明をいただけたらと。 文章だと説明が難しいので、こちらはいったん締めて、別途投稿させて 頂きます。

  • piroin654
  • ベストアンサー率75% (692/917)
回答No.2

何月と"月"を添えるならば、 format(dateadd("m",-3,date),"m") & "月" でもいけます。

  • piroin654
  • ベストアンサー率75% (692/917)
回答No.1

3ヶ月前  format(dateadd("m",-3,date),"m") 2ヶ月前  format(dateadd("m",-2,date),"m") 1ヶ月前  format(dateadd("m",-1,date),"m") 今月    format(date,"m") みたいなことですか?

naoto0216
質問者

お礼

piroin654様 いつもご回答ありがとうございます。 やり方が悪いのかもしれませんが、クエリのデザイン画面のフィールドの 箇所で、Format・・・と記述すると、その文字列がフィールド名になって しまいます。。 また、式1:format(dateadd("m",-3,date),"m") & "月" とすると、クエリ結果が全て「3月」という文字列になってしまいます。 やはりSQLでフィールド名を可変にするしかないのでしょうか。

関連するQ&A