Exportar varios archivos txt -ACCESS
Sintaxis
Open rutaacceso [For modo] [Access acceso] [bloquear] As [#]númeroarchivo [Len=longitudregistro]
La sintaxis de la instrucción Open consta las siguientes partes:
Parte Descripción
rutaacceso Requerido. Expresión de cadena que especifica un nombre de archivo; puede incluir el directorio o carpeta y la unidad de disco.
modo Requerido. Palabra clave que especifica el modo de archivo: Append, Binary, Input, Output o Random. Si no se especifica, el archivo se abre con acceso Random.
acceso Opcional. Palabra clave que especifica las operaciones permitidas en el archivo abierto: Read, Write o Read Write.
bloquear Opcional. Palabra clave que especifica las operaciones permitidas en el archivo abierto por otros procesos: Shared, Lock Read, Lock Write y Lock Read Write.
númeroarchivo Requerido. Un número de archivo válido entre 1 y 511 inclusive. Para obtener el número del siguiente archivo disponible se utiliza la función FreeFile.
longitudregistro Opcional. Número igual o inferior a 32.767 bytes. En archivos abiertos para acceso aleatorio, este valor es la longitud del registro. Para archivos secuenciales, este valor es el número de caracteres almacenados en búfer.
Sub CrearTxt()
"Definimos la Variables que se van ha usar y se Asignan "
Dim PVarTextoFile As String
Dim PVarNumFile as Long
Dim PVarRecorset as ADODB.Recordset
Dim PVarNewRecor as ADODB.Recordset
Set PVarRecorset=New ADODB.Recordset
Set PVarNewRecor = New ADOBD.Recordset
"Creamos una consulta que contenga exclusivamente y sin duplicidad
Todos los numeros de acta de la TablaActas"
PVarRecorset.Open "SELECT CAMPOACTAS FROM TABLAACTAS GROUP BY CAMPOACTAS", CurrentProject.Connection, adOpenKeyset, adLockPessimistic, adCmdText
"Comprobamos que exiten registros si no los hay se cierra la Consulta y se termina el procedimiento"
If PVarRecorset.RecordCount=0 Then
PVarRecorset.Close
Exit Sub
end If
"Si Hay Actas procedemos a crear un bucle que nos lea todas identificadores de las acta y cree un archivo txt con su nombre y listo para poder escribir en el"
Do Until PVarRecorset.EOF
PVarTextoFile=""
PVarNumFile = FreeFile
"Aqui se crea y se queda abierto el Archivo txt"
Open RutaNombreArchivo & PVarRecorset!CAMPOACTA & ".txt" For Output As #PVarNumFile
"Acontinuación Tenemos que extrae de la TablaActas mediante otra consulta todos los registro que correspondan a cada identificador de numero de Acta"
PVarNewRecor.Open "SELECT * FROM TABLAACTAS CAMPOACTA='" & PVarRecorset!CAMPOACTA & "'", CurrentProject.Connection, adOpenKeyset, adLockPessimistic, adCmdText
"Se crea un Bucle que lea todos los registro del acta y los escriba en el txt"
Do Until PVarNewRecor.EOF
PVarTextoFile=PVarTextoFile & PVarNewRecor!CAMPON_RAD & " "
PVarTextoFile=PVarTextoFile & PVarNewRecor!CAMPOACTA & " "
PVarTextoFile=PVarTextoFile & PVarNewRecor!CAMPOFECHA & " "
Print #PVarNumFile, PVarTextoFile
PVarNewRecor.MoveNext
Loop
Close #PVarNumFile
"Se cierra el archivo txt"
"Llegados aqui el procedimiento habra creado y escrito un archivo txt con el nombre de acta correspondiente, y seguimos con el siguiente acta
PVarRecorset.MoveNext
Loop
"Llegados aqui se debe de haber creado para cada uno de los identificadores de CAMPOACTA un archivo en la ruta y cuyo nombre que le demos con contenga el CAMPOACTA"
PVarRecorset.Close
PVarNewRecor.Close
End Sub()