Sub ki308() Dim dat(10) As Integer '下記はデバッグ用数字入力 dat(1) = 3: dat(2) = 1: dat(3) = 8: dat(4) = 0: dat(5) = 9 dat(6) = 4: dat(7) = 2: dat(8) = 5: dat(9) = 6: dat(10) = 7 msg = "" For i = 1 To 10 msg = msg & "(" & i & ":" & dat(i) & ")" Next MsgBox msg & Chr$(10) & Chr$(10) & " 上記のデータを昇順に並びかえます" For j = 1 To 10 For r = j + 1 To 10 If dat(j) > dat(r) Then datm = dat(j) dat(j) = dat(r) dat(r) = datm End If Next Next msg = "" For i = 1 To 10 msg = msg & "(" & i & ":" & dat(i) & ")" Next MsgBox msg End Sub