Escribir instrucción #
Escribe datos en un archivo secuencial.
Sintaxis
Escribir #filenumber, [ outputlist ]
La sintaxis de la instrucción Write # tiene estas partes:
Parte | Descripción |
---|---|
númeroArchivo | Obligatorio. Cualquier número de archivo válido. |
ListaResultados | Opcional. Una o más expresiones numéricas delimitadas por coma o expresiones de cadena para escribir en un archivo. |
Comentarios
Los datos escritos con Write # normalmente se leen desde un archivo con Input #.
Si se omite outputlist y se incluye una coma después de filenumber, se imprime una línea en blanco en el archivo. Las expresiones múltiples se pueden separar con un espacio, un punto y coma o una coma. Un espacio tiene el mismo efecto que un punto y coma.
Cuando se usa Write # para escribir datos en un archivo, se siguen varias suposiciones universales para que los datos siempre se puedan leer e interpretar correctamente mediante Input #, independientemente de la configuración regional:
- Los datos numéricos siempre se escriben utilizando el punto como separador decimal.
- Respecto a los datos de tipo Boolean, se imprime
#TRUE#
o#FALSE#
. Las palabras claveTrue y False no se traducen, independientemente de la configuración regional. - Los datos de fecha se escriben en el archivo mediante el formato de fecha universal. Cuando el componente de fecha u hora no está o es cero, en el archivo solo se escribe la parte proporcionada.
- No se escribe nada en el archivo si los datos outputlist tienen el valor Empty. Sin embargo, para datos de Null, se escribe
#NULL#
. - Si los datos de outputlist son datos Null ,
#NULL#
se escriben en el archivo. - Para datos de tipo Error, la salida aparece como
#ERROR errorcode#
. La palabra clave Error no se traduce, independientemente de la configuración regional.
A diferencia de la instrucción Print # , la instrucción Write # inserta comas entre elementos y comillas alrededor de cadenas a medida que se escriben en el archivo. No hay que colocar delimitadores explícitos en la lista. Write # inserta un carácter de nueva línea, es decir, un avance de línea de retorno de carro (Chr(13) + Chr(10) ), después de haber escrito el carácter final de outputlist en el archivo.
Nota:
No debe escribir cadenas que contengan comillas incrustadas, por ejemplo, "1,2""X"
para su uso con la instrucción Input # ; Input # analiza esta cadena como dos cadenas completas e independientes.
Ejemplo
En este ejemplo, se usa la instrucciónWrite # para escribir datos sin procesar en un archivo secuencial.
Open "TESTFILE" For Output As #1 ' Open file for output.
Write #1, "Hello World", 234 ' Write comma-delimited data.
Write #1, ' Write blank line.
Dim MyBool, MyDate, MyNull, MyError
' Assign Boolean, Date, Null, and Error values.
MyBool = False : MyDate = #February 12, 1969# : MyNull = Null
MyError = CVErr(32767)
' Boolean data is written as #TRUE# or #FALSE#. Date literals are
' written in universal date format, for example, #1994-07-13#
'represents July 13, 1994. Null data is written as #NULL#.
' Error data is written as #ERROR errorcode#.
Write #1, MyBool ; " is a Boolean value"
Write #1, MyDate ; " is a date"
Write #1, MyNull ; " is a null value"
Write #1, MyError ; " is an error value"
Close #1 ' Close file.
Vea también
Soporte técnico y comentarios
¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.