como inserto valores nulos de tipo cadena a un campo

guillermo
02 de Febrero del 2004
alguien puede decirme como puedo insertar una cadena de caracteres a un capo en access, lo que pasa es que estoy tomando datos de un archivo de texto este texto es un reporte generado por otra aplicacion un ejemplo de archivo de texto.


No_Huesp Nombre Nalt Procedencia

004110 SANTIAGO, XOCHITL MEX DF MEXICO
004124 FLORES, GREGORIO MEX DF MEXICO
004127 PALACIOS, ENRIQUE MEX
004160 GARCIA, RODRIGO MEX DF MEXICO
4167 FLORES, GARCIELA MEX DFMEXICO

Estos son mis datos tengo que asignarlos a una tabla pero si se fijan en el tercer registro no hay datos cuando quiero asignar el campo Procedencia a la tabla mi programa se detiene y ya no sigue metiendo datos a la tabla, que puedo hacer.

sdemingo
02 de Febrero del 2004
Hola,

yo lo que haría sería meter un carácter de control (por ejemplo #) entre cada campo en el fichero de texto, quedando así...
004110#SANTIAGO, XOCHITL#MEX#DF MEXICO
004124#FLORES, GREGORIO#MEX#DF MEXICO
004127#PALACIOS, ENRIQUE#MEX
004160#GARCIA, RODRIGO#MEX#DF MEXICO
4167#FLORES, GARCIELA#MEX#DFMEXICO

Tras ello, haría este código...

Private Sub Form_Load()

Dim fso As New FileSystemObject
Dim txtfile, fil1 As File
Dim ts As TextStream
Dim s As String
Dim campos() As String
' Campos de la bd
Dim id, nombre, nat, proc As String

Set fil1 = fso.GetFile("d:prueba.txt")

Set ts = fil1.OpenAsTextStream(ForReading)
Do While Not ts.AtEndOfStream
s = ts.ReadLine
campos = Split(s, "#", -1, vbBinaryCompare)
For i = LBound(campos) To UBound(campos)
id = ""
nombre = ""
nat = ""
proc = ""
Select Case i
Case 0 'No_Huesp
id = campos(i)
Case 1 'Nombre
nombre = campos(i)
Case 2 'Nat
nat = campos(i)
Case 3 'Procedencia
proc = campos(i)
End Select
Next i
' Aki haces el insert en la bd, si no hay datos meterá ""
'strSql = "Insert into tuTabla values('" & id & "','" & nombre & _
"','" & nat & "','" & proc & "')"
'rsRecordSet.Open strSql.............
Loop
ts.Close
End Sub


Salu2
sdemingo