• ベストアンサー

ACCESSレポートのソートに関して

ソートに関して教えて下さい。 現在、レポート出力である帳票を作成していますが、その際のソート順として ある項目の何文字目からをキーとしてソートしたいと考えています。 というのも、ある番号の先頭にアルファベットが存在し、アルファベット+連番という 形となっている為、そのアルファベットを無視して連番だけでソートしたいと考えています。 Oracle等のデータベースで、SQLを用いて取得するような時は、実現できるかと 思われますが、ACCESSのレポートではそのような機能は存在しますでしょうか? 初歩的な質問で申し訳ありませんが、教えて下さい。 よろしくお願いします。

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

  • ベストアンサー
  • chayamati
  • ベストアンサー率41% (260/624)
回答No.5

済みません 前回の訂正です。 前回 このクエリーは レポートのプロパティー内のデーター項目の右端クリックからも設定できます。 としましたが このクエリーは レポートのデザインビューのデータタグの レコードソースの右端クリックからも設定できます。 としてください

その他の回答 (4)

  • chayamati
  • ベストアンサー率41% (260/624)
回答No.4

添付はクエリの例です。 選択クエリで テーブルのフィールドに 分類を追加しこれにソートを設定します。 分類にはコロンを挟んで式 [分類: Right([注文番号],4)] を入力します。 このクエリーは レポートのプロパティー内のデーター項目の右端クリックからも設定できます。

回答No.3

> 《ソート対象項目》 > >  発注番号 XX-XXX-○○○○ > > という形で、 桁数は固定なんですね。ならば、下記の式を試してください。 =Right([発注番号],4) ちなみに、並べ替えとグループ化の設定は、バージョンでかなり異なりますので、 下記を参照してください。 Access2003までの設定 マイクロソフトアクセス活用法~並べ替え/グループ化の設定 http://www.sk-access.com/Syo_Report/SrA007_Group.html Access2007以降 グループ化レポートまたはサマリ レポートを作成する - Access - Office.com http://office.microsoft.com/ja-jp/access-help/HA010006894.aspx#BMaddgroupstoexistingreport

asamix_000
質問者

お礼

hatena1989様、ご回答ありがとうございます。 リンクの件、参考になりました。 ありがとうございました!

回答No.2

アルファベット+連番 のアルファベットの桁数は固定でしょうか。 例えば 2桁で固定なら、レポートの「並べ替え/グループ化の設定」で、 =Val(Mid([フィールド名],3)) という式を設定して、昇順に並び替えればいいでしょう。 あるいは、レコードソースのクエリで、 式1: Val(Mid([フィールド名],3)) というフィールドを作成しておいて、そのフィールドで並び替えを設定してもいいでしょう。 桁数が固定でないならユーザー定義関数を作成する必要があります。

asamix_000
質問者

お礼

hatena1989様、ご回答ありがとうございます。 早速、教えて頂いた内容で行ったところ、どうしても正しくソートされません。 《ソート対象項目》  発注番号 XX-XXX-○○○○ という形で、 =Val(Mid([発注番号],8,4)) というような設定を行いました。 全て文字列だからソートができないのでしょうか、、、 教えて下さい。

  • o_chi_chi
  • ベストアンサー率45% (131/287)
回答No.1

そのレポートのレコードソースをソート済SQLに すればよいと思いますよ。 他には並び替え/グループ化の設定で ソートを指定できます。

asamix_000
質問者

お礼

o_chi_chi様、ご回答ありがとうございました。

関連するQ&A