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