textboxの数字を小さい順に並び替える

タグの編集
投稿者 ニニス  (学生) 投稿日時 2012/1/11 14:06:02
visual basicを使うのはこれで10回目くらいでまだまだ初心者でわからないことばかりなので、細かく教えてください。

10個のテキストボックスに適当な数字(-10000~10000)を小さい順に並び替えて表示したいのですが、まったくやり方がわかりません。

↓こんな感じでやっていますがうまくいきません。
Private Sub Command1_Click()
          Dim n(10) As Integer
          a = Text1.Text
          b = Text2.Text
          c = Text3.Text
          d = Text4.Text
          e = Text5.Text
          f = Text6.Text
          g = Text7.Text
          h = Text8.Text
          i = Text9.Text
          j = Text10.Text
          n(1) = Val(a)
          n(2) = Val(b)
          n(3) = Val(c)
          n(4) = Val(d)
          n(5) = Val(e)
          n(6) = Val(f)
          n(7) = Val(g)
          n(8) = Val(h)
          n(9) = Val(i)
          n(10) = Val(j)
          nmin = 10001
          For i = 1 To 9
          For j = i + 1 To 10
          If j < nmin Then
             j = nmin
         
          End If
          Next j
          Next i
          Form1.Print j
          
         
          
End Sub
投稿者 ラオシス  (中学生) 投稿日時 2012/1/11 19:36:44
>visual basicを使うのはこれで10回目くらいでまだまだ初心者でわからないことばかりなので、細かく教えてください。
なぜ初心者がVB6を使用されているか少し気になったところでもありますが・・・
この機会にVB2010へアップグレードされてはいかがでしょうか。

Visual Basic 2010 Express インストールの手引き
http://homepage1.nifty.com/rucio/main/material/VB2010Install.htm

調べたところ、VB6にはソートという機能はないみたいです。

VB6での配列のSortの使い方
http://oshiete.goo.ne.jp/qa/4348522.html

VBでソート
http://www.geocities.co.jp/SilkRoad/4511/vb/sort.htm

また、ソートはどの言語にも共通していることなので、他の言語もできるのであれば、その資料も参考にされるといいかと。

VB2010の場合は、List(Of T)コレクションか、なんらかのコレクションに追加して、ソートしてみるのもいいと思います。
List(Of T).Sortメソッド
http://msdn.microsoft.com/ja-jp/library/b0zbh7b6.aspx
まぁでも質問を見る限り、学習目的でされていると思うので一回ソートを自分の手でコーティングされた方がいいとおもいます。