開発環境:Visual Web Developer 2008 express
言語:Visual Basic
制限事項:Detatableの使用は禁止
目標: 2次元配列を複数項目でソートしたい。
(1)「科目名」で昇順ソート(ソート処理(1))
(2)「氏名」で昇順ソート(ソート処理(2))
(3)「実施日」で昇順ソート(ソート処理(3))
※並べ替えた結果を利用して色々な処理を行いたいため、表示するコントロールなどに用意された機能は使わず、内部的に並べ替えるロジックを自分で書きたいと考えています。ソート処理(1)~(3)に書くロジックをお教えいただけると助かります。
Dim results(,) As String
Dim i As Integer = 0
ReDim Preserve results(3, 11)
'【武田茂・国語成績】
results(0, 0) = "国語"
results(1, 0) = "武田茂"
results(2, 0) = "1月10日実施"
results(3, 0) = "86点"
results(0, 1) = "国語"
results(1, 1) = "武田茂"
results(2, 1) = "2月10日実施"
results(3, 1) = "21点"
results(0, 2) = "国語"
results(1, 2) = "武田茂"
results(2, 2) = "3月10日実施"
results(3, 2) = "51点"
'【藤代慶介・国語成績】
results(0, 3) = "国語"
results(1, 3) = "藤代慶介"
results(2, 3) = "1月10日実施"
results(3, 3) = "86点"
results(0, 4) = "国語"
results(1, 4) = "藤代慶介"
results(2, 4) = "2月10日実施"
results(3, 4) = "21点"
results(0, 5) = "国語"
results(1, 5) = "藤代慶介"
results(2, 5) = "3月10日実施"
results(3, 5) = "51点"
'【武田茂・英語成績】
results(0, 6) = "英語"
results(1, 6) = "武田茂"
results(2, 6) = "1月10日実施"
results(3, 6) = "86点"
results(0, 7) = "英語"
results(1, 7) = "武田茂"
results(2, 7) = "2月10日実施"
results(3, 7) = "21点"
results(0, 8) = "英語"
results(1, 8) = "武田茂"
results(2, 8) = "3月10日実施"
results(3, 8) = "51点"
'【藤代慶介・英語成績】
results(0, 9) = "英語"
results(1, 9) = "藤代慶介"
results(2, 9) = "1月10日実施"
results(3, 9) = "86点"
results(0, 10) = "英語"
results(1, 10) = "藤代慶介"
results(2, 10) = "2月10日実施"
results(3, 10) = "21点"
results(0, 11) = "英語"
results(1, 11) = "藤代慶介"
results(2, 11) = "3月10日実施"
results(3, 11) = "51点"
'下記をキーとして、(1)から順に昇順ソートをかける
'(1)科目名
'ソート処理(1)
'(2)氏名
'ソート処理(2)
'(3)実施日
'ソート処理(3)
よろしくお願い致します。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
いくつか補足要求を。
1.なぜDataTableは禁止なのか
(データベースがない環境でもDataTableを独自に定義して使用することはできます)
2.二次元配列でないといけない理由はありますか?
Private Structure XX
Dim Kamoku As String
Dim SimeiAs String
Dim Zissi As String
Dim Ten As String
End Structure
Dim tbl As results()
という感じで構造体の配列にする方が並び替えの時は楽なので
3.点数は、「~点」という文字列型で保持するのでしょうか?
(文字列でソートすると「100点」は「90点」よりも小さくなります。)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
ゆるやかでぃべーと タイムマシンを破壊すべきか。
これはディベートの論題だと仮定したうえでの回答お願いします。あなたは、その末にタイムマシンを壊してしまうのか、使い道を探すのかどうかを考えてもらいたいです。
-
フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
あなたが普段思っている「これまだ誰も言ってなかったけど共感されるだろうな」というあるあるを教えてください
-
映画のエンドロール観る派?観ない派?
映画が終わった後、すぐに席を立って帰る方もちらほら見かけます。皆さんはエンドロールの最後まで観ていきますか?
-
海外旅行から帰ってきたら、まず何を食べる?
帰国して1番食べたくなるもの、食べたくなるだろうなと思うもの、皆さんはありますか?
-
天使と悪魔選手権
悪魔がこんなささやきをしていたら、天使のあなたはなんと言って止めますか?
-
VB.NET 2つの配列を連動して並び替える
Visual Basic(VBA)
-
2次元配列のソート
Visual Basic(VBA)
-
多次元配列のソート方法
Visual Basic(VBA)
-
-
4
VBA 多次元配列のクイックソートの降順版
Visual Basic(VBA)
-
5
FORMが開いているかどうかの確認方法
Visual Basic(VBA)
-
6
EXCEL VBA 2次元配列に格納された値の最小値を調べたい
Access(アクセス)
-
7
配列の重複する値とその個数を取得したい
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
System.IO.Directory.GetFiles...
-
VB.NETでファイル名順にファイ...
-
DataGridViewの複数列を連動し...
-
複数キーを利用したソートの仕...
-
C# DataTableの行をソートしてD...
-
C# DataGridView のヘッダーセ...
-
C# ArrayListを二次元配列のよ...
-
あるディレクトリ内のファイル...
-
C言語・要素除去
-
DataGridViewのソートを止めたい
-
数字文字列のソート方法
-
datatablesのソートを数字順に...
-
ファイル名「1.jpg ~10.jpg~...
-
VBScriptで重複レコードを削除...
-
C++ 入力した3つのint型の整数...
-
Double型ソート方法
-
VBA基本構文の作り方 2列の...
-
C言語 配列の長さの上限
-
VBAのプログラムで、DIAG = 1# ...
-
配列を使わずに、変数名を動的...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
System.IO.Directory.GetFiles...
-
C# DataGridView のヘッダーセ...
-
VB.NETでファイル名順にファイ...
-
あるディレクトリ内のファイル...
-
VBA基本構文の作り方 2列の...
-
ファイル名「1.jpg ~10.jpg~...
-
Excelですべての組合せ(重複組...
-
vbでDataTableの抽出コピー
-
C# DataTableの行をソートしてD...
-
listboxの並び替え
-
(VBA) Dir 関数で取得するファ...
-
コレクションの数値をSortで並...
-
C言語・要素除去
-
Fortran77で多次元配列を並び替...
-
C# DataTable ソートについて
-
excel VBA の条件をつけての列...
-
VBScriptで重複レコードを削除...
-
文字列をソートする方法
-
n番目に大きい数を求めるアル...
-
C言語でアナグラムを求めるプロ...
おすすめ情報