Ver Mensaje Individual
  #27 (permalink)  
Antiguo 29/04/2010, 13:27
Avatar de erbuson
erbuson
 
Fecha de Ingreso: noviembre-2009
Mensajes: 701
Antigüedad: 15 años
Puntos: 53
Respuesta: Ayuda por favor

Hola de nuevo:

El problema es que no acabo de entender tu código, en primer lugar creo que deberías simplificarlo un poco y comentarlo entre lineas ya que las variables que para ti significan algo, para mi no me dicen nada, de todos modos aprovecho para enseñarte una cosa mas muy buena en el bucle For Next y comentar algo que no termina de encajarme en lo que veo:

Supongamos:
Dim Registro As Integer
Dim RegistrosFichero As Integer

Registros = LOF(Numero) / 94

Si quieres Leer el Fichero desde el Principio hasta el Final

For Registro = 1 To RegistrosFichero ' Pero esto ya lo sabías

Si quieres Leer el Fichero desde el Final hasta el Principio

For Registro = RegistrosFichero To 1 Step -1 ' No es magia, es VB

de este modo te evitas tener que ir descontando a la variable que estas utilizando.

Lo que me llama la atencion es lo siguiente tal vez porque yo no le utilizado nunca y esto me confunde:

ReDim Preserve CSemanas(1, UBound(CSemanas, 1) + 1)

CSemanas(0, UBound(CSemanas, 1) + 1) = NRegistro
CSemanas(1, UBound(CSemanas, 1) + 1) = Horas.semana

En la primera linea, estas añadiendo a la segunda dimension el número de elementos de la primera dimension + 1 ¿ Que sentido tiene ?

Despues pasas el dato a Ubound(CSemanas) sin tener en cuenta que Ubound ha aumentado por razon de la linea anterior.

Lo siento pero no acabo de encajar la idea.

Mejor explícame que pretendes y vemos como hacerlo.
__________________
Agradecer a quien te enseñó, es enseñar lo que de él aprendiste.
Recuerda: Decir gracias, poco cuesta y mucho vale ...