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

Agregar txt a flexgrid, los ultimos toques

Estas en el tema de Agregar txt a flexgrid, los ultimos toques en el foro de Visual Basic clásico en Foros del Web. Hola, la otra vez Geoavila me paso un ejemplo de las faqs para cargar un txt separado por comas en un msflexgrid en varias columnas. ...
  #1 (permalink)  
Antiguo 13/09/2005, 13:21
 
Fecha de Ingreso: septiembre-2005
Mensajes: 10
Antigüedad: 18 años, 8 meses
Puntos: 0
Agregar txt a flexgrid, los ultimos toques

Hola, la otra vez Geoavila me paso un ejemplo de las faqs para cargar un txt separado por comas en un msflexgrid en varias columnas. Aca tengo este ejemplo que tambien usa split, pero esta un poco cambiado ya que ese ejemplo me cargaba varias columnas que era lo que yo queria, pero si tenia un txt sin comas, un numero abajo del otro, no me lo cargaba, es decir me hacia lo mas complicado pero si quiero hacer lo mas facil, cargar un archivo en una sola columna, no me sale. Este codigo sí me carga un archivo en una sola columna o en todas las columnas que haya en el txt. Pero el problema es que antes de cargarlo, tengo que agregar la cantidad de filas o columnas que tenga el txt en el msflexgrid. Si no, me dice que el subindice esta afuera del intervalo...Este problema no me pasaba en el ejemplo de las faqs, pero como les dije, ahi si o si el txt tenia que tener varias columnas... como puedo hacer para que las columnas y/o filas que hagan falta me las agregue solo?

Private Sub Command1_Click()
On Error GoTo error 'ABRIMOS EL ARCHIVO
Directory$ = "c:\a.txt"
Dim MyString As String
On Error GoTo error
Open Directory$ For Input As #1
While Not EOF(1)
Line Input #1, MyString$
DoEvents

Dim V As Variant 'SEPARAMOS LAS COMAS
V = Split(MyString$, ",")
For i = 0 To UBound(V)
MSFlexGrid1.TextMatrix(j, i) = V(i)
Next
j = j + 1

Wend 'CERRAMOS EL ARCHIVO
Close #1
Exit Sub
error: MsgBox Err.Description, vbExclamation, "Error"
End Sub
  #2 (permalink)  
Antiguo 13/09/2005, 13:28
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
tenes quecontar cuantas comas hay para deber de agregar las columnas que queres primero cargas el texto contas la primera linea cuantas comas tiene y mira cuantas columnas tiene el flexgrid, si es mayor que agregue si es menor o igual no haga nada..

el proglema que te dá ahora es que te da un problema de subindece verdad, lo mismo me paso a mi y tube que agregar un parte para contar comas y agregar columnas...

nos vemos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
  #3 (permalink)  
Antiguo 14/09/2005, 10:51
 
Fecha de Ingreso: septiembre-2005
Mensajes: 10
Antigüedad: 18 años, 8 meses
Puntos: 0
mira aca puse esta linea que sirve para agregar la cantidad de columnas que tenga el archivo para que no diga que el subindice esta afuera del intervalo:

Dim V As Variant
V = Split(MyString$, ",")
For i = 0 To UBound(V)
MSFlexGrid1.TextMatrix(j, i) = V(i)
MSFlexGrid1.Cols = UBound(V) + 1 'AGREGA LAS COLUMNAS
Next
j = j + 1

bueno las columnas ya estan, pero como hago para contar las lineas del archivo y que me las agregue al msflexgrid?? grasia
  #4 (permalink)  
Antiguo 14/09/2005, 10:53
Avatar de GeoAvila
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Antigua Guatemala
Mensajes: 4.032
Antigüedad: 20 años, 4 meses
Puntos: 53
Cita:
Iniciado por nadiesabenada
mira aca puse esta linea que sirve para agregar la cantidad de columnas que tenga el archivo para que no diga que el subindice esta afuera del intervalo:

Dim V As Variant
V = Split(MyString$, ",")
For i = 0 To UBound(V)
MSFlexGrid1.TextMatrix(j, i) = V(i)
MSFlexGrid1.Cols = UBound(V) + 1 'AGREGA LAS COLUMNAS
Next
j = j + 1

bueno las columnas ya estan, pero como hago para contar las lineas del archivo y que me las agregue al msflexgrid?? grasia
ok esa misma parte la tiene el ejemplo que esta en las faq's...

nos vemos.. y para eso estamos..
__________________
* Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ
Sitio http://www.geoavila.com twitter: @GeoAvila
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 04:08.