• ベストアンサー

【ACCESS2000】 VBAでのソート方法

tksoftの回答

  • ベストアンサー
  • tksoft
  • ベストアンサー率36% (99/273)
回答No.1

とりあえず、参考にされているURLのテーブルに「日付」フィールドが加わったとすると。 Set db = CurrentDb() Set rs = db.OpenRecordset("tbl_sample") の部分を Dim SQL As String SQL = "SELECT * FROM tbl_sample ORDER BY No, 日付" Set db = CurrentDb Set rs = DB.OpenRecordset(SQL, dbOpenDynaset) てな具合に書き換えればいけるんじゃないでしょうか。

関連するQ&A

  • Access2003オートナンバーを任意の値に

    Access2003で、オートナンバーでID番号の管理(主キー)をしています。 このID番号の他に、10桁の数値でプロジェクト管理したいと思っております。 オートナンバーを基に、別IDを作成する方法を教えてください。 なお、この10桁の数値は、先頭の4桁がプロジェクト番号として使用し、 後ろの6桁はオートナンバーのIDと同じ数値となります。 ======================================== (例)  [ID]     [ID2]   1    1001000001   2    1001000002   3    1001000003   〃       〃 ======================================== 下記のURLを参考にしてやってみたのですが、追加クエリを実行しても、 なぜか、オートナンバーフィールドへ追加することができませんでした。 ※追加クエリ実行エラーで、「型変換エラーのためnullに設定しました」となります。 http://www.accessclub.jp/samplefile/samplefile_145.htm お手数お掛けしますが、宜しくお願い致します。

  • ACCESSで日付ごとに自動連番(日付+連番)する方法

    ACCESSで日付ごとに自動連番(日付+連番)する方法 ACCESSとvba、共に初心者です。 ACCESS2003を使用しています。日付ごとに自動連番する方法が知りたくいろいろ調べていたところ過去ログ(http://okwave.jp/qa/q726921.html)のベストアンサーさんの回答にたどりつきました。 とりあえず勉強と思い紹介されている通りにテーブル作成からフォームのレコード移動時へのコード貼り付けまで一通り行ってみましたが、自動連番とならず同じ番号のままとなってしまいます。(日付はパソコンの日付更新時にちゃんと反映されています。) 自動連番されないのは何が原因なのでしょうか。どなたかご教授の程よろしくお願いします。 例)DATEが5月5日の場合のIDへの記載値  0505001  0505001←ここが001のまま0505002にしたい。  0506001←日付が変われば0506(5月6日)に変わる。 以上、よろしくお願いいたします。

  • アクセスのレポートでの連番付番方法について

     いつもお世話になっております。  アクセス2016のレポートで、連番のふり方についてお教えいただきたいと思います。  レポートでは、最初に日付でグループ化し、次に名前でグループ化しています。  連番は最初のグループ化でしている日付でふりたいのですが、やり方が分かりませんので、どうぞご教示をお願いいたします。  イメージは、下記のように考えています。 【例】テーブル名:T_仕事 日付    名前   仕事 8月1日  ああああ aaa 8月1日  ああああ bbb 8月1日  いいいい ccc 8月1日  うううう ddd 8月2日  うううう eee 8月2日  うううう fff 8月2日  ええええ ggg 8月2日  おおおお hhh 8月2日  おおおお iii 8月3日  かかかか jjj 8月3日  かかかか kkk レポート名:R_仕事 日付   名前   仕事 連番 8月1日 ああああ aaa  1           bbb  2      いいいい ccc  3      うううう ddd  4 8月2日 うううう eee  1           fff   2      ええええ ggg  3      おおおお hhh  4           iii   5 8月3日 かかかか jjj   1           kkk  2

  • ファイル名のソートについて教えて下さい

    ホームページビルダーV8を使っています。 分類した数字を付けたファイル名を 下記(例)のように作ったのですが 41hana.htm、423hana-pro.htm、 51jiro.htm、523jiro-pro.htm、 61take.htm、64take-nikki.htm... ファイルを開く時に、番号順ではなく 41hana.htm、51jiro.htm、61take.htm、 64take-nikki.htm、423hana-pro.htm、 523jiro-pro.htm... と、数字の桁数順に並んでしまいます。 ファイルが少ない頃は特に面倒ではなかったの ですが、増えてきたので探すのが大変です。 右クリックで[アイコンの整列]→[名前]にしても 同じようです。 今のファイル名を変更せずに、桁数に関係なく 数字順に並べ変える方法はないでしょうか?

  • ACCESSの自動連番について

    ACCESS2000を使っています。 自動連番を通常すると1・2・3・・・と自動で連番を作成してくれますが、それを日付+連番というものに出来ますでしょうか? 例)1210001   1210002   |   1210100 日付は月と日にちで、連番は3桁です。 数字の連番の方は、日付が変わるとまた1に戻るようにしたいです。 何か良い方法があったら教えてください。

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

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

  • 項目1の日付順に並べ項目2の番号順に並べる方法

    ちょっとクエリーを組むのに悩んでいます。 下記のようなデータがあった場合に 項目1のグループ毎の最大の日付順に並べ、 項目2の番号順に並べたいのですが、 どういうクエリーを書いたらいいのか悩んでいます。 何かいい方法はないでしょうか? 元データ 項目1、項目2、日付 1、0、2011/8/15 1、1、2011/8/17 1、2、2011/8/20 2、0、2011/8/16 3、0、2011/8/18 3、1、2011/8/19 出力結果 項目1、項目2、日付 1、0、2011/8/15 1、1、2011/8/17 1、2、2011/8/20 3、0、2011/8/18 3、1、2011/8/19 2、0、2011/8/16

    • ベストアンサー
    • MySQL
  • Accessのレポートで連番をふる方法

    いつもお世話になっております。 Access2010のレポートで連番をふる方法をお教え願います。 レポートの中で2つグループ化しています。2番目のグループ化では、テキストボックスのプロパティでコントロールソースに「=1」を、集計実行に「グループ全体」を設定すれば、連番を簡単にふることができました。 今回お聞きしたいのは、1番目のグループ化で連番をふる方法です。 例として、下記のようなテーブルがあるとします。 【テーブル名:T_予算】 業者区分 物品区分 物品名 市内 消耗品 あ 市内 消耗品 い 市内 消耗品 う 市内 消耗品 え 市内 消耗品 お 市内 食糧 か 市内 食糧 き 市内 食糧 く 市内 食糧 け 市内 役務 こ 市内 役務 さ 市内 役務 し 市内 委託 す 市内 委託 せ 市内 委託 そ 市内 委託 た 私なりに調べて、レポートに下記のように設定しました。 ①1番目のグループ化で連番を入れたいテキスト(名称:通し番号)を詳細セクションに配置しました。 ②1番目のグループヘッダーセクション(名称:グループヘッダー0)のイベント「フォーマット時」に Me!通し番号 = 0 を設定しました。 ③詳細セクションのイベント「フォーマット時」に If FormatCount = 1 Then Me!通し番号 = Me!通し番号 + 1 End If を設定しました。 これをレポートで実行すると下記のようになります。 【レポート名:R_予算】 ◆市内 ←1番目のグループ化 【消耗品】 ←2番目のグループ化 あ 1[1] い 2[2] う 3[3] え 4[4] お 5[5] ※「1」は2番目のグループ化の通し番号、 「[1]」は1番目のグループ化の通し番号です。 【食糧】 か 1[9] き 2[10] く 3[11] け 4[12] 【役務】 こ 1[16] さ 2[17] し 3[18] 【委託】 す 1[20] せ 2「21」 そ 3「22」 た 4「23」 このように表示されますが、なぜか1番目のグループ化の通し番号が5から9に、12から16に、18から20になってしまいます。 番号がとびとびにならず、1から16までふる方法はありますでしょうか。 どうかご教示をお願いいたします。 この例において1番目のグループ化は1つしかありませんが、実際のテーブルでは何個もあります。

  • ACCESS レポートで同じ値のときは先頭のみ表示したい

    いつもお世話になっております。また教えてください。 下記のようなレポートがあります。 (番号+日付+名前順、番号でグループ化) 番号 日付 名前 金額 1000 0820 AA 1000 1000 0820 BB 2000 1000 0821 CC 3000 1000 0821 DD 4000 1000 0822 EE 5000 1000計      15000 2000 0820 FF 10000 2000 0820 GG 20000 2000 0821 HH 30000 2000 0821 II 40000 2000 0821 JJ 50000 2000計      150000 これを下記のようにしたいのです。 番号 日付 名前 金額 1000 0820 AA 1000       BB 2000    0821 CC 3000       DD 4000    0822 EE 5000 1000計 3件   15000 2000 0820 FF 10000       GG 20000    0821 HH 30000       II 40000       JJ 50000 2000計 2件   150000 1.同じ値は先頭のみ表示する 2.番号グループ内の日付の個数を数える この方法を教えてください。Access2000です。 よろしくお願いします。

  • Outlook Express の送信済みトレイをソートする

    Outlook Expressの送信済みトレイに入っているメイルを名前順かつ、日付け順にしたいのですが、、、 受信トレイの場合、まず日付け順にソートして、そのあと名前順にすると、名前順で同一名前の中は日付け順になりますが、送信済みトレイは同じようになりません。 良い方法があったら、おしえてください。