RE:pasar txt a visual basic
Puedes leer el archivo, pasarlo a un String y luego manipularlo por filas y Columnas (en tu caso cambiando el delimitador de las columnas), luego puedes crear un recordset por código y agregarle los datos o bien cargarlos en alguna grilla que no requiera de un recordset, por ejemplo:
Archivo = FileToString("MiArchivo.txt")
Lineas = Split(Archivo,vbCrLf)
Luego Lineas es un vector que contiene cada fila del archivo, luego si es delimitado por barras (|) puedes hacer:
Columnas = Split(Lineas(i),"|")
La función para pasar un archivo a un String es:
Public Function FileToString(FileName As String) As String
On Error GoTo ErrorHandler
Dim hlngFile As Long, strFile As String
hlngFile = FreeFile
Open FileName For Binary Access Read As hlngFile
FileToString = vbNullString
strFile = String(FileLen(FileName), " ")
Get hlngFile, , strFile
Close hlngFile
FileToString = strFile
Exit Function
ErrorHandler:
FileToString = Empty
End Function