Hola erbunson!
Aqui pongo el codigo con mis pretensiones para poder aclarar y que se sepa my idea.
Código vb:
Ver original' --------------------------------------------------------------------------
' \\ -- Subrutina para verificar que cantidad de semanas hay en Horas.dat.
' --------------------------------------------------------------------------
Public Sub ContadorSemanas()
Dim Nsemana As Integer
Dim NRegistro As Integer
Dim i As Integer
'Declaracion array Csemanas
Dim CSemanas() As Variant
D = LOF(Numero) / 94
RegUltimo = LOF(Numero) / 94
ReDim CSemanas(D, 1)
For i = 1 To D 'En este bucle pretendo leer todos los registros _
'solicitandole solo 2 datos .semana y el nr.de registro.
With Horas
Get #Numero, RegUltimo, Horas
Nsemana = .semana
NRegistro = RegUltimo
RegUltimo = RegUltimo - 1
End With
MsgBox Nsemana & " , " & NRegistro & " , " & i 'Me visualiza los datos a grabar.
If i > 0 Then 'Aqui pretendo comparar el ultimo registro guardado _
'con el actual y si es la misma semana lo omito y voy al siguiente.
If CSemanas(i, 1) <> CSemanas(i - 1, 1) Then
CSemanas(i, 0) = NRegistro
CSemanas(i, 1) = Nsemana
End If
End If
MsgBox CSemanas(i, 1) & " , " & CSemanas(i - 1, 1) 'Me deberia visualizar lo que _
'hay en esas partes de la Matriz.
Next i
MsgBox UBound(CSemanas, 1) & " " & LBound(CSemanas, 2) 'Me deberia informar del tamaño final de la Matriz _
'en mi caso 2,0 pues solo hay tres semanas en 12 registros la 17,18 y 19
NrSemanas = UBound(CSemanas, 1) ' Esto es para un contador externo.
End Sub
Un saludo