HOLA!!!
Creo que hice lo que pedis:
El form tiene un array de labels de 25 items (0-24) llamados LBL().
CODIGO DEL FORM :
Dim MATRIX() As Integer
Public N As Integer ' DIMENSION DE LA MATRIZ
Public PASA As Boolean ' VERIFICA LA REPETICION DE NUMEROS
Public ORDENADO As Boolean ' VERIFICA QUE ESTE ORDENADO
Private Sub Form_Load()
Randomize
Me.Caption = "Ejercicio de Matrices"
'CREA LA MATRIZ
N = 5
ReDim MATRIX(N, N)
'MATRIZ CREADA
Call LLENAR_MATRIZ
Call ORDENAR_MATRIZ
Call MOSTRAR_MATRIZ
End Sub
Private Sub LLENAR_MATRIZ()
For Y = 1 To N
For X = 1 To N
MATRIX(Y, X) = Int(Rnd() * 30)
'VERIFICA SI ESTA REPETIDO Y LO CAMBIA
PASA = False
While PASA = False
PASA = True
For Y2 = 1 To N
For X2 = 1 To N
If MATRIX(Y, X) = MATRIX(Y2, X2) And Not (X2 = X And Y2 = Y) Then
PASA = False
End If
Next X2
Next Y2
If PASA = False Then
MATRIX(Y, X) = Int(Rnd() * 30)
End If
Wend
'VERIFICA SI ESTA REPETIDO Y LO CAMBIA
Next X
Next Y
End Sub
Private Sub ORDENAR_MATRIZ()
Dim AUX As Integer
While ORDENADO = False
ORDENADO = True
For Y = 1 To N
For X = 1 To N
If Not (X = N And Y = N) Then
If X = N Then
If MATRIX(Y, X) > MATRIX(Y + 1, 1) Then
AUX = MATRIX(Y + 1, 1)
MATRIX(Y + 1, 1) = MATRIX(Y, X)
MATRIX(Y, X) = AUX
ORDENADO = False
End If
Else
If MATRIX(Y, X) > MATRIX(Y, X + 1) Then
AUX = MATRIX(Y, X + 1)
MATRIX(Y, X + 1) = MATRIX(Y, X)
MATRIX(Y, X) = AUX
ORDENADO = False
End If
End If
End If
Next X
Next Y
Wend
End Sub
Private Sub MOSTRAR_MATRIZ()
For Y = 1 To N
For X = 1 To N
If X = Y Then
LBL(CT).Caption = MATRIX(Y, X)
End If
If X + Y = N + 1 Then
LBL(CT).Caption = MATRIX(Y, X)
End If
CT = CT + 1
Next X
Next Y
End Sub
GRACIAS POR LEER!!!