Iniciar sesión con Microsoft
Iniciar sesión o crear una cuenta
Hola:
Seleccione una cuenta diferente.
Tiene varias cuentas
Elija la cuenta con la que desea iniciar sesión.

Para una versión de Microsoft Word 97 de este artículo, consulte
187985.

Resumen

Este artículo contiene cuatro de Visual Basic para Aplicaciones de Microsoft macros que puede utilizar para emular Microsoft Word 6.0 para la funcionalidad de Windows de la tecla ENTRAR para desplazarse entre los campos de formulario en los documentos protegidos.

Más información

Microsoft proporciona ejemplos de programación con fines ilustrativos únicamente, sin garantía expresa o implícita, incluyendo, pero sin limitarse a, las garantías implícitas de comerciabilidad e idoneidad para un fin determinado. En este artículo se supone que está familiarizado con el lenguaje de programación que se demuestra y las herramientas utilizadas para crear y depurar procedimientos. Los profesionales de soporte técnico de Microsoft pueden explicarle la funcionalidad de un determinado procedimiento, pero no modificarán estos ejemplos para ofrecer mayor funcionalidad ni crearán procedimientos que cumplan sus necesidades específicas.
Si tiene poca experiencia en programación, desea ponerse en contacto con un Microsoft Certified Partner o servicios de consultoría de Microsoft. Para obtener más información, visite estos sitios Web de Microsoft:

Asociado certificado de Microsoft - https://partner.microsoft.com/global/30000104

Servicios de asesoría de Microsoft: http://support.microsoft.com/gp/advisoryservice

Para obtener más información acerca de las opciones de soporte están disponibles y cómo ponerse en contacto con Microsoft, visite el siguiente sitio Web de Microsoft: http://support.microsoft.com/default.aspx?scid=fh; deEN-US; CNTACTMS
Para obtener información adicional acerca de cómo ejecutar código de ejemplo, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

212536 OFF2000: cómo ejecutar código de ejemplo de artículos de Knowledge Base

INTRODUCIR la funcionalidad clave en Word 6.0

En Word 6.0 para Windows, si presiona la tecla ENTRAR en un documento protegido para formularios, el punto de inserción se mueve al siguiente campo de formulario. Por el contrario, en las versiones posteriores de Word, la tecla ENTRAR no se mueve al siguiente campo de formulario pero en su lugar inserta una marca de párrafo, al igual que en un documento desprotegido. Esto le permite escribir varias líneas de texto en un campo de formulario de texto.

Macros

Los siguientes son cuatro de Visual Basic para Aplicaciones macros que puede utilizar juntas para emular el Word 6.0 para la funcionalidad de Windows de la tecla ENTRAR en nuevos documentos de campo de formulario protegido basado en una plantilla. La siguiente es una breve descripción de la funcionalidad de cada macro:

  • La primera macro desplaza el punto de inserción al siguiente campo de formulario.

  • La segunda macro asigna la primera macro a la tecla ENTRAR.

  • La tercera macro asegura que la funcionalidad clave continúa cuando se abre un documento basado en la plantilla de formulario en el futuro.

  • La macro cuarta quita la macro asignada de la tecla ENTRAR, restaurar la funcionalidad predeterminada de la tecla ENTRAR.

Importante: para que este código funcione como está escrito, no se debería proteger la plantilla. Si la plantilla está protegida, recibirá el siguiente mensaje de error:

No se puede modificar el contexto.

Para desproteger la plantilla, siga estos pasos:

  1. Abra la plantilla que contiene las macros que se describen en este artículo.

  2. En el menú Herramientas , haga clic en Desproteger documento.

  3. En el menú archivo , haga clic en Guardar.

  4. En el menú Archivo , haga clic en Cerrar.

Primera Macro: Mover el punto de inserción al siguiente campo de formulario

Esta macro desplaza el punto de inserción al siguiente campo de formulario. Si el campo de formulario actual es el último en el documento, el punto de inserción se mueve al primer campo de formulario.

Esta macro utiliza la colección de marcadores para recuperar el nombre del campo de formulario actual. El nombre de cada campo de formulario es también el nombre de un marcador insertado para el campo de formulario. Si usted tiene cualquier otros marcadores en el documento, tendrá que agregar más código aquí para controlar los posibles errores. La macro supone también que todos los campos de formulario en los documentos de permiten la entrada del usuario. Si no es el caso en el documento, debe agregar código adicional en la macro.

La macro comprueba si la sección actual está protegida o desprotegido y, a continuación, se mueve al siguiente campo de formulario (en una sección protegida) o inserta una marca de párrafo (en una sección desprotegida). Esta funcionalidad es necesaria para los documentos que contienen ambas secciones que están protegidas para el formulario de entrada y sin protección secciones.

Sub EnterKeyMacro()
' Check whether the document is protected for forms
' and whether the protection is active.
If ActiveDocument.ProtectionType = wdAllowOnlyFormFields And _
Selection.Sections(1).ProtectedForForms = True Then
' Retrieve the bookmark of the current selection.
' This is equivalent to the name of the form field.
myformfield = Selection.Bookmarks(1).Name
' Go to the next form field if the current form field
' is not the last one in the document.
If ActiveDocument.FormFields(myformfield).Name <> _
ActiveDocument.FormFields(ActiveDocument.FormFields.Count) _
.Name Then
ActiveDocument.FormFields(myformfield).Next.Select
Else
' If the current form field is the last one,
' go to the first form field in the document.
ActiveDocument.FormFields(1).Select
End If
Else
' If the document is not protected for forms,
' insert a tab stop character.
Selection.TypeText Chr(13)
End If
End Sub

Segunda Macro: Asignar la Macro EnterkeyMacro a la tecla ENTRAR

Esta macro adjunta la macro EnterKeyMacro a la tecla ENTRAR, con lo que se reprograma la función de la clave cuando se utiliza en campos de formulario del documento protegido. Cuando se utiliza esta macro en una plantilla personalizada, asígnele el nombre AutoNew. Esto cambia la funcionalidad de la tecla ENTRAR en todos los documentos nuevos de formulario basado en la plantilla.

Sub AutoNew()
' Do Not protect the template containing these macros.
CustomizationContext = ActiveDocument.AttachedTemplate
' Bind the ENTER key to the EnterKeyMacro.
KeyBindings.Add KeyCode:=BuildKeyCode(wdKeyReturn), _
KeyCategory:=wdKeyCategoryMacro, Command:="EnterKeyMacro"
' Reprotect the document with Forms protection.
ActiveDocument.Protect Type:=wdAllowOnlyFormFields, NoReset:=True
End Sub

Tercera Macro: Asignar la Macro AutoOpen a la tecla ENTRAR

Agregar una macro AutoOpen con el código siguiente. Esto garantiza que la funcionalidad clave continúa cuando se abre un documento basado en la plantilla de formulario en el futuro.

Sub AutoOpen()
' This macro will reassign the ENTER key when you open an existing
' Word form fields document.
CustomizationContext = ActiveDocument.AttachedTemplate
' Bind the Enter key to the EnterKeyMacro.
KeyBindings.Add KeyCode:=BuildKeyCode(wdKeyReturn), _
KeyCategory:=wdKeyCategoryMacro, Command:="EnterKeyMacro"
End Sub

Nota: ejecutar estas macros pueden deshabilitar algunas características, como Autocorrección y Autotexto y puede afectar a otras características que dependen de la tecla ENTRAR para que funcione correctamente. Debe ejecutar la macro para restaurar la funcionalidad predeterminada de la tecla ENTRAR o reinicie Microsoft Word cuarto.

Cuarto Macro: Quitar el comando asignado a la tecla ENTRAR

Esta macro restaura la funcionalidad predeterminada de la tecla ENTRAR. Cuando se utiliza esta macro en una plantilla personalizada, asígnele el nombre AutoClose.

Sub AutoClose()
CustomizationContext = ActiveDocument.AttachedTemplate
FindKey(KeyCode:=BuildKeyCode(wdKeyReturn)).Disable
' Disables prompt to save template changes.
Templates(1).Save
End Sub

Nota: la propiedad CustomizationContext establece la ubicación donde se guardará, en este caso la plantilla adjunta al documento activo la personalización del teclado.

Referencias

Para obtener información adicional acerca de los recursos disponibles para crear soluciones personalizadas mediante Visual Basic para Aplicaciones y Microsoft Word 2000, haga clic en los números de artículo siguientes para verlos en Microsoft Knowledge Base:

212623 WD2000: recursos de programación de Macro

226118 OFF2000: recursos de programación para Visual Basic para Aplicaciones

¿Necesita más ayuda?

¿Quiere más opciones?

Explore las ventajas de las suscripciones, examine los cursos de aprendizaje, aprenda a proteger su dispositivo y mucho más.

Las comunidades le ayudan a formular y responder preguntas, enviar comentarios y leer a expertos con conocimientos extensos.

¿Le ha sido útil esta información?

¿Cuál es tu grado de satisfacción con la calidad del lenguaje?
¿Qué ha afectado a su experiencia?
Si presiona Enviar, sus comentarios se usarán para mejorar los productos y servicios de Microsoft. El administrador de TI podrá recopilar estos datos. Declaración de privacidad.

¡Gracias por sus comentarios!

×