- 締切済み
構造体の配列変数の順番入れ替え
宜しくお願いします。 第1回~第30回までの回の日付・担当者・詳細・もろもろ…のデータがあり、今、構造体の配列変数にデータを入れています。 '宣言 Option Base 1 Dim Kai(30) as sData type sData hiduke as date tanto as string shosai as string ・ ・ ・ end type '中身 for i = 1 to 30 kai(i).hiduke=rs.field("第" & i & "回目日付") kai(i).tanto=rs.field("第" & i & "回目担当者") kai(i).shosai=rs.field("第" & i & "回目詳細") ・ ・ ・ next これは出来たのですが、実は日付がばらばらなのです。 第1回目が古い日付で第30回目が最新の日付 ではなく ランダムなのです。 これを、配列変数に入れた後に hiduke の所を見て、kai(1)が一番古い日付のデータ、kai(30)が一番新しいデータと効率よく入れ替えるのはどうしたら良いか悩んでいます。 ちなみに第30回まで全部埋まっている訳でもなく、空欄の時もあります。 分かる方いらっしゃいましたら宜しくお願い致します。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- KenKen_SP
- ベストアンサー率62% (785/1258)
意図がよくわかりませんが、rs.field とあるのだから、 構造体に代入するデータはレコードセットからですよね・・・? 予め SQL でソートをかけとけば良いという話ではなくて? 環境とかデータの具体例とか、材料不足でこれ以上はなんとも コメントしにくいです。
- tricot13
- ベストアンサー率12% (14/111)
言語はなんですかね iをインクリメントすればよさげ
補足
忘れた内容を追記しようと思ったらもぅ回答が!ありがとうございます。 Access2003のVBAです。 インクリメント・・・配列変数を動的にすれば良いですかねぇ… でも大きい日付は後につけられますが、間に入る日付が出た時にはどうしようと悩み中です;;
- Trick--o--
- ベストアンサー率20% (413/2034)
配列をソートしてやればいい。 方法は検索すれば色々出てくる。
補足
忘れた内容を追記しようと思ったらもぅ回答が!ありがとうございます。 Access2003のVBAです。 後出しのようになってしまってすみません。 VBAにソートが無いようで…気づいていないだけかもですが。 色々と検索続行してみようと思います。
補足
回答ありがとうございます。 記入忘れで申し訳ありません。 Access2003 です。 レコードセットなのですが、1つのレコードに横並び(?)に 1~30までのデータが入っているのです。 なのでSQL文作成時にソートをかけておく事が出来ず、 配列変数に入れてから、それを・・・と思っておりました。 ありがとうございました。