OL2000: Cómo actualizar elementos existentes para que utilicen un nuevo formulario personalizado

Seleccione idioma Seleccione idioma
Id. de artículo: 201087 - Ver los productos a los que se aplica este artículo
Este artículo se publicó anteriormente con el número E201087
Expandir todo | Contraer todo

En esta página

Resumen

Este artículo describe cómo actualizar los elementos de una carpeta de Outlook para que se abran utilizando un formulario diferente del que tienen asociado actualmente.

Más información

Hay varias situaciones en la que le puede interesar modificar el formulario que se utiliza en todos los elementos de una carpeta. Por ejemplo:
  • utiliza el formulario predeterminado de Outlook para escribir 10 contactos en la carpeta Contactos. A continuación, crea un formulario personalizado para los contactos y escribe 10 contactos adicionales. Quiere que los 10 primeros contactos utilicen el nuevo formulario personalizado cuando los abra.
  • Crea un formulario personalizado para los contactos y escribe 10 contactos con dicho formulario. A continuación, importa 100 contactos desde un archivo de texto. Los 100 contactos importados utilizan el formulario predeterminado en lugar del formulario personalizado.
  • Tiene una carpeta pública con 1000 elementos basados en el formulario de envío predeterminado. Seguidamente, crea un formulario personalizado que muestra los elementos de la forma más relevante para su trabajo. Quiere aplicar el nuevo formulario a los 1000 elementos existentes.
  • Ha instalado el Administrador de contactos o el Administrador de formularios, ambos modifican el formulario de contactos predeterminado, y ahora quiere volver a utilizar el otro formulario.
Una propiedad del elemento llamada clase de mensaje determina el formulario que utiliza el elemento. La clase de mensaje de un elemento no se puede modificar de forma manual. Sin embargo, puede escribir código de Visual Basic Scripting Edition (VBScript) o de automatización de Visual Basic para modificar la clase de mensaje de todos los elementos de una carpeta.

Cuando crea y publica un formulario personalizado, el formulario se asigna a una clase de mensaje. Dicha clase de mensaje determina qué formulario está asociado con un elemento. El formato del nombre es "IPM. . ", donde: es el tipo de formulario (Contacto, Tarea, etc.) y es el nombre del formulario personalizado. Por ejemplo, si crea un nuevo formulario de contactos, le pone por nombre Revisado y, a continuación, lo publica en la carpeta Contactos, la clase de mensaje es IPM.Contact.Revisado.

NOTA: en cada una de las operaciones siguientes, es fundamental que el nombre de la nueva clase de mensaje se escriba exactamente como el nombre que se utilizó cuando se publicó el formulario.

La tabla siguiente enumera los distintos nombres que se utilizan para las clases de mensajes:

   Elemento           Carpeta predeterminada  Clase de mensaje predeterminada
   -------------  --------------  ---------------------
   Contacto        Contactos        IPM.Contact
   Tarea           Tareas           IPM.Task
   Cita    Calendario        IPM.Appointment
   Nota           Notas           IPM.StickyNote
   Entrada de diario  Diario         IPM.Activity
   Correo          Bandeja de entrada           IPM.Note
NOTA: el formulario Note no se puede personalizar y publicar.

Para ver la clase de mensaje de un elemento existente, agregue el campo clase de mensaje como una de las columnas de la vista actual. La clase de mensaje de esta vista es de sólo lectura; no puede escribir una clase de mensaje diferente para modificar el formulario manualmente.

Para agregar la clase de mensaje a la vista, siga estos pasos:

  1. Cambie a la vista de tabla, como la vista Lista de teléfonos de la carpeta Contactos.
  2. Haga clic con el botón secundario del mouse (ratón) en el encabezado de la vista y, en el menú contextual, haga clic en Selector de campos.
  3. En la lista Selector de campos, haga clic en Todos los campos de contacto.
  4. Arrastre el campo Clase de mensaje al encabezado de la vista para agregarlo como columna.
La modificación del campo Clase de mensaje en elementos existentes requiere el uso de código Visual Basic Scripting Edition (VBScript) dentro de un formulario de Outlook, o de código Visual Basic desde otro programa, para automatizar Outlook y modificar los campos Clase de mensaje.

A continuación se describen dos métodos para modificar los campos Clase de mensaje. Sólo tiene que utilizar el segundo método si no tiene Microsoft Word 97 o Word 2000, o si no puede obtener el archivo Omsgclas.exe.

Descargar la utilidad Omsgclas.exe

Descargue Omsgclas.exe, que contiene un documento de Word 97/2000 con una macro que cambia las clases de mensajes en Outlook. Es la misma utilidad que estaba disponible para Outlook 97 y Word 97. También funciona con Outlook 2000 y Word 2000. La macro se ejecuta automáticamente cuando se abre el documento.

Cuando se abre omsgclas en Word 2000, puede que Word abra el documento pero que no ejecute la macro. Para corregir este problema, tiene que restablecer la seguridad de las macros en Word 2000. En Word, seleccione Macro en el menú Herramientas y haga clic en Seguridad. Cambie la seguridad a baja o mediana. Esto hace que la macro se pueda ejecutar.

Para obtener más información acerca de cómo conseguir el archivo Omsgclas.exe, consulte el siguiente artículo en Microsoft Knowledge Base:
OL2000: Word Document to Change Message Class of Outlook Items

Crear una subrutina VBScript

Siga los pasos descritos a continuación para crear y ejecutar una subrutina VBScript que modifique todos los elementos de una carpeta para que tengan un formulario especificado. En este ejemplo se da por supuesto que en la carpeta actual ha publicado un nuevo formulario llamado MiNuevoForm. Si utiliza un título diferente para el formulario, modifique el título del formulario utilizado en la tercera línea de código de la sección "Escriba el código VBScript".

Esta solución consiste en tres tareas.
  • Cree un nuevo elemento en el que almacenar el código VBScript.
  • Escriba el código VBScript y guarde el formulario.
  • Ejecute el código VBScript.

Crear un nuevo elemento en el que almacenar el código VBScript

  1. En el menú Archivo, seleccione Nuevo y, a continuación, haga clic en Mensaje de correo.
  2. En el menú Herramientas, seleccione Formularios y, a continuación, haga clic en Diseñar este formulario para pasar el modo de diseño de formularios.

Escribir el código VBScript y guardar el formulario

  1. En el menú Formulario, haga clic en Ver código.
  2. En el Editor de secuencias de comandos, escriba el código siguiente. No tiene que escribir las líneas que comienzan por apóstrofo, puesto que son líneas de comentario que se omiten en la ejecución.
  3. Sub Item_Open()
    
       ' Cambiar la siguiente línea por su nueva Clase de mensaje
       NuevaCM = "IPM.Contactos.MiNuevoContacto"
    
       Set CarpetaActual = Application.ActiveExplorer.CurrentFolder
       Set TodosElementos = CarpetaActual.Items
       NumElementos = CarpetaActual.Items.Count
    
       ' Loop through all of the items in the folder
       For I = 1 To NumElementos
    
          Set ElementoActual = TodosElementos.Item(I)
    
          ' Comprobar si es necesario cambiar la Clase del mensaje
          If ElementoActual.MessageClass <> NuevaCM Then
    
             ' Cambiar la Clase de mensaje
             ElementoActual.MessageClass = NuevaCM
    
             ' Guardar el elemento cambiado
             ElementoActual.Save
    
          End If
    
       Next
    
       MsgBox "Terminado"
    
    End Sub
    
  4. En el menú Archivo, haga clic en Cerrar.
  5. En el menú Archivo, haga clic en Guardar como. Asegúrese de que el tipo de archivo predeterminado es Plantilla de Outlook (.oft) y, a continuación, seleccione la ubicación en la que va a guardar el archivo. Escriba el nombre de archivo del formulario y, a continuación, haga clic en Aceptar.
  6. Cierre el elemento haciendo clic en la X de la esquina superior derecha de la ventana y, a continuación, haga clic en No cuando se le pregunte si desea guardar los cambios.

Ejecutar el código VBScript

  1. Abra la carpeta que contiene los elementos que va a actualizar.
  2. Para ejecutar el código VBScript, vuelva a abrir el elemento utilizando el Explorador de Windows para buscar el archivo y, a continuación, haga doble clic en el archivo .oft. El código se ejecutará automáticamente porque está escrito en el procedimiento de evento Item_Open. Si recibe alguna advertencia sobre macros, haga clic en Habilitar macros.
  3. Espere mientras el código cambia la clase de mensaje de todos los elementos de la carpeta actualmente seleccionada. En función del número de elementos, puede tardar varios minutos. Cuando el código termine, debe recibir un mensaje que indica Terminado.
NOTA: Si posteriormente desea modificar el código VBScript para cambiar el nombre de la clase de mensaje, mantenga presionada la tecla MAYÚS cuando abra el elemento. Esto impide que se ejecute el código VBScript y permite que usted pueda pasar al modo de diseño, efectuar modificaciones en el código VBScript y guardar el formulario.

Referencias

Para obtener información adicional acerca de los recursos disponibles y respuestas a las preguntas más frecuentes acerca de las soluciones para Microsoft Outlook 2000, consulte los siguientes artículos en Microsoft Knowledge Base:
146636 OL2000: Formularios personalizados y soluciones de Outlook
241220 OL2000: General Information About the Existing Items Converter

Propiedades

Id. de artículo: 201087 - Última revisión: lunes, 10 de noviembre de 2003 - Versión: 1.0
La información de este artículo se refiere a:
  • Microsoft Outlook 2000 Standard
Palabras clave: 
ol20collabht ol20genusght ol20proght KB201087

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com