Visual Basic - El subíndice está fuera del intervalo (flexgrid)

Life is soft - evento anual de software empresarial
 
Vista:

El subíndice está fuera del intervalo (flexgrid)

Publicado por Tony (1 intervención) el 18/05/2011 23:06:11
Hola!!! Estoy haciendo una alta de registro con un flexgrid que me trae los datos que están en la base. Una vez que hago el alta, le hago una actualización al flexgrid con este código:

Sub cargar2()

If Not Conectar Then Exit Sub
sql = "Select * from Informes"
Set Rs = Cn.Execute(sql)
lin = 0

If Not Rs.EOF Then
grdInformes.Clear
Do While Not Rs.EOF
With grdInformes
.Cols = 1
.ColAlignment(0) = 2
.TextMatrix(0, 0) = "Código del Interesado"
.ColWidth(0) = 2000
lin = lin + 1
.TextMatrix(lin, 0) = Rs!Codigo <----Se me para en esta línea con el cartel de: "El subíndice está..."
Rs.MoveNext
End With
Loop
Else
cargar3
End If

Saludos!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 4
Ha aumentado su posición en 25 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

El subíndice está fuera del intervalo (flexgrid)

Publicado por Paolo Santos (76 intervenciones) el 20/05/2011 03:32:50
Se desconoce cuantas filas(Rows) declarastes en el flexgrid en tiempo de diseño, pero por lo visto solo le dijistes que tiene 1 fila por lo que cuando empieza en la fila 0 escribe bien, pero cuando salta a la fila 1, como no existe para el flexgrid es alli donde te da el error del subindice esta fuera del intervalo, para que no se vea feo el monton de filas en blanco y como no sabemos cuantos registros trae segun la data guardada pues te recomiendo que en lugar de esto:

.TextMatrix(lin, 0) = Rs!Codigo

lo cambies por esto:

.AddItem Rs!Codigo

si no te funciona de la manera anterior agrega lo siguiente antes del textmatrix:

.Rows=lin
.TextMatrix(lin, 0) = Rs!Codigo

asi que agrega lineas cuando necesite mas espacio, ademas te hago la observacion que cuando colocas ".Cols = 1" le indicas que el flexgrid solo tiene 1 columna.

bueno espero te sirva alguna de estas soluciones, saludos...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar