Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Porque me da este error?

Estas en el tema de Porque me da este error? en el foro de Visual Basic clásico en Foros del Web. Me dice "el subindice esta fuera del intervalo" y me colorea esta linea: Código: Textf(c).Text = tabla(c) Codigo completo: Código: If openfile.FileName = "" Then ...
  #1 (permalink)  
Antiguo 14/12/2008, 06:45
 
Fecha de Ingreso: septiembre-2007
Mensajes: 189
Antigüedad: 16 años, 7 meses
Puntos: 1
Porque me da este error?

Me dice "el subindice esta fuera del intervalo" y me colorea esta linea:
Código:
Textf(c).Text = tabla(c)
Codigo completo:
Código:
If openfile.FileName = "" Then
Else

Dim tabla() As String
Dim config As String
Dim c As Integer

Open openfile.FileName For Input As #1
While Not EOF(1)
Line Input #1, config
Wend
Close #1
tabla = Split(config, "text=")

For c = 1 To 12 Step 1
Textf(c).Text = tabla(4)
Next
os = "1"
End If
Gracias de antemano!
  #2 (permalink)  
Antiguo 15/12/2008, 03:23
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 16 años, 2 meses
Puntos: 37
Respuesta: Porque me da este error?

Cita:
Iniciado por magTpeak Ver Mensaje
Me dice "el subindice esta fuera del intervalo" y me colorea esta linea:
Código:
Textf(c).Text = tabla(c)
Codigo completo:
....
Gracias de antemano!
Fíjate que solo estás cargando en el vector la última línea del archivo.
Prueba así:

Código:
Open openfile.FileName For Input As #1
' cargamos el archivo entero en la variable "config"
config = Input(LOF(1), #1)
Close #1
' eliminamos los caracteres de retorno de carro.
config = Replace(config, vbNewLine, "")
' cargamos los datos en el vector "tabla"
tabla = Split(config, "text=")
' y mostramos los datos en los TextBox
For c = 1 To 12 'Step 1 <- esta instrucción no es necesaria
    Textf(c) = tabla(c)
Next
Tienes que verificar que el vector tiene los mismos elementos que el array de Textf.

Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:37.