Ver Mensaje Individual
  #2 (permalink)  
Antiguo 04/11/2010, 13:13
Avatar de pkj
pkj
 
Fecha de Ingreso: julio-2006
Ubicación: Órbita sincrónica
Mensajes: 899
Antigüedad: 17 años, 10 meses
Puntos: 29
Respuesta: Obtener datos de un archivo de texto

No lo he probado, pero creo que debería funcionar:

Código vb:
Ver original
  1. Function LeerRegistroTxt(ByVal NombreArchivo As String, ByVal Línea As Long, Optional ByVal Columna As Long) As String
  2.   Dim NumFichero As Integer
  3.   Dim Linea As String
  4.   On Error GoTo ErrorLectura
  5.   Open NombreArchivo For Input As #NumFichero
  6.   Do Until EOF(NumFichero)
  7.     If Linea = 0 Then Exit Do
  8.     Line Input #NumFichero, Linea
  9.     Linea = Linea - 1
  10.   Loop
  11.   If Columna > 0 Then
  12.     Dim Matriz() As String
  13.     Matriz = Split(Linea, vbTab)
  14.     Linea = Matriz(Columna - 1)
  15.   End If
  16.   LeerRegistroTxt = Linea
  17.   Exit Function
  18.  
  19. ErrorLectura:
  20.   MsgBox Err.Description
  21.   Err.Clear
  22.  
  23. End Function

Solo tienes que ir llamando a la función con los parámetros adecuados. Para eso lo más básico sería un form con 4 textbox, y un boton con el código:

Text4.Text = LeerRegistroTxt Text1, Text2, Text3

Donde text1 contendría el camino y nombre del fichero a leer y text2 y text3 la línea y columna. El valor buscado se mostrará como ya imaginarás en el text4.

Linea y Columna deben ser valores mayores que cero.

La columna la pongo como opcional y si no la incluyes debería devolver toda la línea

El camino al fichero de texto lo puedes evitar si copias el programa que has creado en la carpeta de los textos y ahí lo ejecutas. De ese modo solo tienes que poner los nombres de los textos en el text1.

Coméntame si falla el invento.

Saludos
__________________
No hay preguntas tontas, solo gente estup..., ¡No!, ¿como era? No hay gente que pregunte a tontos... ¡Nooo!... ¡Vaya cabeza!