Accessのリストボックスでデータをソートして表示する方法

このQ&Aのポイント
  • Accessのリストボックスでデータをソートして表示する方法について説明します。
  • リストボックスで表示されるデータが予期しない順序で表示される場合、ソートの方法を変更することで正しい順序で表示させることができます。
  • この場合、ソートキーとして「月」の値を利用し、昇順または降順に並び替えることができます。
回答を見る
  • ベストアンサー

accessのリストボックスでデータをソートして表示する

いつもお世話になっております。 Accessを使っております。 リストボックスに下記コードでデータを表示して います。 Me.lstA.RowSource = "SELECT 月 FROM 入金表 ORDER BY 月" 「月」はString列なのですが、ソートして表示すると ----------------------------  10  11  1  3  6  7 ---------------------------- と表示されます。これを ----------------------------  1  3  6  7  10  11 ---------------------------- と表示させたいのですが、何かいい方法はないで しょうか? よろしくお願いいたします。

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

  • ベストアンサー
  • process9
  • ベストアンサー率29% (81/272)
回答No.1

sqlを SELECT 月 FROM 入金表 ORDER BY cint(月) に変更するだけでいいのでは?

sansan33311
質問者

お礼

process9様 ご回答ありがとうございました。 お教えいただいた方法でできました。 ありがとうございます。

関連するQ&A

  • Accessのフォームでリストボックスをソートしたい。

    Accessのフォームで、検索結果をリストボックスに一覧で表示させています。 現時点では登録順に表示されてしまうので、最初の列(名称1)もしくは各列ごとにコマンドボタンなどでソートをかけたいです。 もしくは、ソートをかけた状態で表示させる方法でも良いです。 この様にリスト表示させています。 Me.一覧.RowSource = " SELECT [テーブル1].[ID], [ネジ].[名称1], [ネジ].[名称2] FROM テーブル1 WHERE ((([テーブル1].[名称1] & [名称2]) Like '*" & 名称1 & "*')); " 初心者です。マクロ以外で何か良い方法が有りましたらご教授願います。

  • リストボックスの使い方

    お世話になります。 VBAで下記コードを書き、リストボックスにカラムを2列 表示させたいのですが、"番号"しかリストボックスに 表示されません。 Me.lst入居者一覧.ColumnCount = 2 Me.lst入居者一覧.RowSource = "SELECT 氏名,番号 FROM 一覧" Me.lst入居者一覧.ColumnWidths = "2;2" リストボックスのプロパティー等はちゃんと設定して いるつもりなのですが、何が原因なのでしょう? どうかよろしくお願いいたします。

  • accessのリストボックスのヘッダーについて

    度々お世話になっております。 ACCESSのリストボックスを使って、下記のようにして テーブルのデータを表示しております。 lstデータ.rowsource = "SELECT A.[1], A.[2], B.[1] FROM A LEFT JOIN B ON (A.[3] = B.iNum) AND (A.[5] = B.[5]) AND (A.[4] = B.[4])" ここでリストボックスの見出し(ヘッダー)も表示して いるのですが例えば1列目なら「A.[1]」と表示されて しまいます。 これを「[1]」とだけ表示させたいのですが、 何か方法があるでしょうか? 度々で恐縮なのですが、どうかよろしく お願いいたします。

  • SELECT項目以外でソートする場合

    お世話様です。 Access2003 VBAで、クエリ結果をフォーム上のリストボックスに表示する際、 リストボックスに出力しない項目(SELECT項目に含まれていない項目)で ソートはかけられるのでしょうか? 例:リストA.RowSource = SELECT 項目1, 項目2, 項目3 FROM テーブル名 ORDER BY 項目4   の様な事がしたいのです。 現段階では調べきれていないため、 出力したくない項目の幅をソース上でゼロにし、 擬似的に非表示にする事で回避しています。 SQL文法の問題になってしまうかもしれませんが、 よろしくお願いいたします。

  • 指定文字以降のソート方法

    以下のようなテーブル(てすと)があったとします。   (列)  AAA-2999 … (1)  BBB-4999 … (2)  CCC-3999 … (3)  DDD-1999 … (4) クエリ:SELECT 列 FROM てすと (ORDER BY ???) 結 果:(4)・(1)・(3)・(2) このテーブルを"-"以降で昇順にソートしたいのですが、ORDER BY句を用いてできるのでしょうか?

  • アクセス(ACCESS)のリストボックスについて

    アクセスでフォームにテキストボックスとリストボックスを配置して、 テキストボックスに入力した文字列により、リストボックスに表示される データを変えたいのですが(フィルタをかけるというのでしょうか??) そこで、vbaを用い、リストボックスのプロパティの値集合ソースに SELECT * FROM aaa where aaa.bbb like "*あ*"; 'あ と言う文字のあいまい検索のつもり ”あ”はテキストボックス    に入力されている。 と入るような事を考えたのですが、ここで、aaaの部分がテーブルを基にした 場合は、該当するデータすべてが表示されますが、クエリーを基にすると 先頭のデータしか表示しないのです。 たぶん、素人の考えなのでしょうが、どうしてそうなるのかが分かりません。 教えていただけないでしょうか? できたら、クエリーを基にしても、該当データが表示できる方法も 教えてください。お願いします。 VBAは(?)かなりの初心者です。上記の方法も本に書いてあった物を やっと流用しました。猿にも解るくらいでお願いします。 ちなみに、アクセスは2000を使用しています。

  • VBAのリストボックス連動がうまく表示されません。

    例えば、エクセル表に下記のようなデータが入っているとします。 A列は項目であり、B列は項目内容数(D列以降の項目数)、D列にはA列項目の内容が入っています。しかし、この列は変動する為、変数で指定しています。 これをリストボックス1で、まずA列の内容を表示させて、その中で選んだ項目をリストボックス2でD列以降の行内容を表示させ、リストボックス2の値を取得したいのですが、リストボックス2がうまくい表示できません。 リストボックス1では .RowSourceを使ってセル指定して表示させています。 このようなケースがuserformに多数あり、for~の処理はできるだけ避けています。 例えばUserForm_Initialize()で次の通りです。 With ListBox1 .ColumnCount = 1 .BoundColumn = 1 .RowSource = Worksheets(wksheet).Range(Cells(2, item_No), Cells(item_max_cnt, item_No)).Address(External:=True) VBA初心者で恥ずかしい質問ですが、どなたかご教示宜しくお願い致します。m(_ _)m A列_B列__D列_E列_F列_G列_H列 … a_3__あ_い_う b_1__か c_5__さ_し_す_せ_そ

  • リストボックスにシートの値を表示させたいのですが

    vbaでシートのリストボックスにシートの値を表示させたいのですが シートモジュールでこのコードを実行しようとしてもエラーになり出来ないのですが どこが間違ってますか? Sub リストボックスに値を表示する() Me.ListBox1.RowSource = Range("c1:c10").Value End Sub Me.ListBox1.Value = Range("c1:c10").Value もエラーになりました。

  • ソートと列番号

    データ取得時に列番号を組み込みたい場合 ROW_NUMBER() OVER (ORDER BY ソートキー) で実現できますが、これは実際ソートも行ってくれるのでしょうか? 例えば 1) select dt1,dt2, dt3,ROW_NUMBER() OVER (ORDER BY dt1,dt2,dt3) as dt4 from table_1 2) select dt1,dt2, dt3 from table_1 ORDER BY dt1,dt2,dt3 では同じ順序でデータが取得されるのでしょうか? 簡単にデータを作ってみたところ、同じようなんですが・・・・

  • VBAのリストボックスについて

     今、ユーザーフォームをつくり、その中にリストボックスを配置したんですけど、セルに入力されている値を表示したいと思い、RowSourceプロパティに"sheets1!A1:C100"と指定しました。しかし、実際リストボックスに表示されたのは先頭のA列だけで、B、C列は表示されませんでした。どうしたらこれらは表示できるのでしょうか。もとの参照データが膨大な為、よろしくお願いします。