Imagen: PixelMe/Shutterstock

El artículo Cómo usar VBA para actualizar campos en un documento de Word le muestra tres formas de actualizar campos: imprimir el artículo y dos procedimientos de VBA. Los dos procedimientos de VBA funcionan bien juntos, pero debe cerrar o abrir el documento para activar los procedimientos. En este artículo, prometí mostrarle una forma de reutilizar los comandos integrados para actualizar campos. En este artículo, le mostraré cómo reutilizar el comando Guardar para actualizar todos los campos del documento. Es una tarea muy específica, pero puede reutilizar la mayoría de los comandos integrados de la misma manera. Usaremos Word en los ejemplos, pero también puede aplicar el mismo código a un archivo de Excel.

VER: 83 trucos de Excel que todo usuario debe dominar (TechRepublic)

El archivo de demostración utiliza campos de Word. Si no sabe cómo usar e ingresar campos, puede leer 3 formas de ingresar campos en Microsoft Word. Sin embargo, los campos se proporcionan en los archivos de demostración, por lo que no necesita saber cómo usarlos para completar el ejemplo.

Uso Microsoft 365 en un sistema Windows 10 de 64 bits, pero puede usar versiones anteriores. Los procedimientos de VBA no son compatibles con las versiones web. Para su comodidad, puede descargar los archivos de demostración .docm, .doc y .bas.

Índice
  • Cómo agregar el procedimiento VBA a Word
  • Cómo usar el procedimiento VBA en Word
  • Cómo agregar el procedimiento VBA a Word

    Si alguna vez ha creado procedimientos de VBA, sabe que está trabajando en el Editor de Visual Basic. Casi todos los comandos integrados de Word se pueden reutilizar para incluir tareas adicionales mediante VBA, pero la ruta es un poco diferente.

    Reutilizaremos el comando Guardar integrado agregando el código necesario para actualizar todos los campos cuando haga clic en Guardar. Puede pensar que el comando Guardar como es más apropiado, pero no puede cambiarlo. Esto ahora es parte del arreglo Backstage y no puede reutilizar estos comandos. Sin embargo, eso no significa que no puedas acercarte a Guardar.

    Si está utilizando una versión de cinta, asegúrese de guardar el libro de trabajo como un archivo habilitado para macros antes de continuar. Si está utilizando una versión de menú, puede omitir este paso.

    Ahora agreguemos el procedimiento que se muestra en Lista A (abajo):

    1. Presione Alt+F8.
    2. En la lista desplegable Macros en, elija Comandos de Word, como se muestra en Figura A.
    3. Pulgar hacia abajo hasta que encuentre FileSave y selecciónelo. o entrar ArchivoGuardar. (Los comandos continúan comenzando con el nombre del menú asociado con el comando en la versión anterior del menú).
    4. Regrese a la lista desplegable Macros en y seleccione el documento o la plantilla donde desea almacenar esta macro. Dentro Figura Bpuede ver que he seleccionado el documento actualmente abierto (el archivo de demostración .docm).
    5. Haga clic en Crear para abrir el VBE con el código auxiliar y el comando adecuados, como se muestra en Figura C.

    Figura A

    Figura B

    Figura C

    El procedimiento contiene una sola línea, el método Guardar. Para reutilizar el comando, agregue el código apropiado. Lista A incluye el comando VBA necesario para actualizar todos los campos del documento. El archivo .docm de demostración de Word contiene este comando Guardar reutilizado (en su módulo NewMacros).

    Lista A

    SubarchivoGuardar()

    'Archivo Guardar Macro

    ' Guardar el documento o plantilla activa

    'Actualiza todos los campos al cerrar el documento; reutilice el comando Guardar.

    Actualizando este documento.Campos

    ActiveDocument.Save

    Título final

    En este caso, puede ingresar el Actualizando este documento.Campos línea al procedimiento de copia de seguridad que abrió anteriormente si está trabajando solo. Si está ingresando el código manualmente, no pegue esta línea desde esta página web. En su lugar, escriba si desde el teclado o copie la línea en un editor de texto, luego pegue este código en el procedimiento Guardar. Esto eliminará los caracteres web fantasma que, de lo contrario, podrían causar errores.

    Cómo usar el procedimiento VBA en Word

    Como puedes ver en Figura D, el archivo de demostración consta de dos páginas y cada página tiene dos campos de Word, {PAGE} y {NUMPAGES}. Si está trabajando con el archivo .docm de demostración, puede ver los campos subyacentes presionando Alt+F9. Presione nuevamente para ocultar códigos y mostrar resultados.

    Figura D

    Para ver cómo funciona todo junto, elimine el salto de página duro entre las dos páginas. Para eliminar el salto de página permanente, coloque el cursor al principio de la página 2, antes de la palabra Esto. Luego presione Retroceso. Esto eliminará la página dos y reubicará el texto y los campos en la página 2. Como mencioné, los campos en la segunda línea de texto no no actualización, como se muestra en Figura E. Esto es típico de los campos de Word; la mayoría no se actualiza automáticamente. (Los dos campos solo se actualizarán automáticamente en el encabezado o pie de página).

    Figura E

    Con las dos líneas de la primera página, haga clic en el icono Guardar en la parte superior de la pantalla o en la barra de herramientas de acceso rápido. Esto ejecuta el comando Guardar, que ahora incluye la línea de campo de actualización. Por lo tanto, al hacer clic en Guardar se actualizan los campos, como se muestra en Figura F.

    Figura F

    El comando Guardar reutilizado actualizará todos los campos, y es posible que eso no sea lo que desea. Además, no incluye el comando Guardar como, Cerrar ni el icono X (Cerrar). Los archivos de demostración incluyen un procedimiento FileClose reutilizado para que pueda ver cómo funciona, pero es poco probable que desee confiar en él.