Compartir a través de


Especificar condiciones de regla

El modelo de objetos de reglas admite las acciones y condiciones de las reglas de mayor uso. Cada objeto Rule tiene una propiedad Actions que representa las acciones de regla de esa regla, así como una propiedad Conditions y una propiedad Exceptions que representan las condiciones de esa regla. En este tema se describe el modo en que el modelo de objetos de reglas admite las condiciones de regla.

Las condiciones de regla de una regla se representan mediante un objeto de colección RuleConditions . Un objeto RuleConditions tiene propiedades que corresponden a cada condición de regla de uso frecuente de una regla. Por ejemplo, si una regla especifica dos condiciones (el mensaje es importante y el asunto contiene ciertas palabras), las propiedades Importance y Subject del objeto de colección RuleConditions de la regla devolverán los objetos de condición de regla respectivos que están habilitados (RuleCondition.Enabled es True).

Las condiciones que no se especifican en una regla no se habilitarán en el objeto RuleCondition correspondiente (RuleCondition.Enabled es False). Estos objetos de condición de regla se representan mediante el objeto RuleCondition o mediante objetos personalizados derivados del objeto RuleCondition. En este último caso, la propiedad RuleConditions.Importance devolverá un objeto ImportanceRuleCondition, y la propiedad RuleConditions.Subject devolverá un objeto TextRuleCondition, ambos derivados del objeto RuleCondition. El objeto RuleCondition y sus objetos derivados tienen la propiedad ConditionType que indicará el tipo de la condición de regla; por ejemplo, ImportanceRuleCondition.ConditionType indicará el valor olConditionImportance y TextRuleCondition.ConditionType indicará olConditionSubject.

Tenga en cuenta que el modelo de objetos de reglas conserva una paridad parcial con el Asistente para reglas y alertas. Es decir, si bien puede usar el asistente para crear reglas que especifiquen cualquier acción o condición que vea en el asistente, puede crear reglas mediante programación que usen algunas de estas acciones o condiciones, pero no todas. Un ejemplo de una condición que admite el modelo de objetos de reglas para las reglas creadas mediante el asistente, pero no para las creadas por el modelo de objetos, son los mensajes de cierto nivel de confidencialidad. Use el Asistente para crear una regla que especifique la confidencialidad como condición.

Mediante el uso del modelo de objetos de reglas, puede enumerar reglas de este tipo en la colección Rules; por cada regla de la colección Rules, se enumera su colección RuleConditions y se busca una condición de regla habilitada para la confidencialidad. En el código, esto significaría para cada regla de la colección Rules , enumerar RuleConditions.Item(Index) mediante index de 1 a RuleConditions.Count y buscar una condición habilitada con RuleCondition.ConditionType igual a olConditionSensitivity. Además, puede habilitar o deshabilitar una condición de regla de este tipo en una regla. Sin embargo, no se puede crear mediante programación una regla que especifique la condición olConditionSensitivity .

En la tabla siguiente se enumeran todas las condiciones de regla admitidas por el Asistente para reglas y alertas y si se admite cada condición de regla al crear una regla mediante el modelo de objetos Rules. Una condición de regla que no pueda utilizarse con las reglas creadas por el modelo de objetos de reglas sólo se puede enumerar, habilitar o deshabilitar mediante programación en las reglas existentes creadas por el Asistente para reglas y alertas. En la tabla también se indica si la condición de regla se aplica a las reglas con los tipos de regla olRuleReceive, olRuleSend, o con ambos.

Nota No se puede habilitar ni deshabilitar una condición de regla del tipo olConditionOtherMachine. Este tipo de condición de regla indica que la regla sólo puede ejecutarse en un equipo específico, pero que el equipo actual no es dicho equipo. Esto ocurre cuando la regla se ha creado en un equipo y la condición de regla olConditionLocalMachineOnly está habilitada, lo que indica que la regla sólo puede ejecutarse en ese equipo. En ciertos casos, olConditionLocalMachine se establece automáticamente como consecuencia de que se habilite otra condición de regla, como olConditionAccount. Cuando se ejecute la misma regla en otro equipo, la regla indicará que la condición olConditionOtherMachine está habilitada.

Condition Constante de olRuleConditionType ¿Se admite al crear nuevas reglas mediante programación? ¿Se aplica a las reglas olRuleReceive? ¿Se aplica a las reglas olRuleSend?
Account es la cuenta especificada en AccountRuleCondition.Account. olConditionAccount
El mensaje tiene asignada cualquier categoría. olConditionAnyCategory
El cuerpo contiene palabras especificadas en TextRuleCondition.Text. olConditionBody
Cuerpo o el asunto contiene palabras especificadas por TextRuleCondition.Text. olConditionBodyOrSubject
Al mensaje se le asigna la categoría o categorías especificadas en CategoryRuleCondition.Categories. olConditionCategory
El mensaje tiene mi nombre en el cuadro CC. olConditionCc
El mensaje se recibió entre x e y, donde x e y son valores enteros. olConditionDateRange No
El mensaje está marcado para la acción especificada. olConditionFlaggedForAction No
El mensaje usa el formulario especificado en FormNameRuleCondition.FormName. olConditionFormName
El remitente está en la lista de destinatarios especificada en ToOrFromRuleCondition.Recipients. olConditionFrom No
El mensaje lo ha generado cualquier suscripción RSS. olConditionFromAnyRssFeed No
El mensaje lo ha generado una suscripción RSS especificada. olConditionFromRssFeed No
El mensaje tiene un archivo de datos adjuntos. olConditionHasAttachment
El mensaje está marcado con el nivel de importancia especificado. olConditionImportance
La regla sólo se puede ejecutar en este equipo. olConditionLocalMachineOnly
El mensaje es una invitación a una reunión o una actualización de la misma. olConditionMeetingInviteOrUpdate
Encabezado del mensaje contiene palabras especificadas en TextRuleCondition.Text. olConditionMessageHeader No
El mensaje no tiene mi nombre en el cuadro Para. olConditionNotTo No
El mensaje sólo se me ha enviado a mí. olConditionOnlyToMe No
El mensaje es un mensaje fuera de la oficina. olConditionOOF No No
La regla sólo puede ejecutarse en un equipo concreto que no es el actual. olConditionOtherMachine No
La propiedad del documento es exacta, contiene o no contiene las propiedades especificadas. olConditionProperty No
Dirección del destinatario contiene palabras especificadas en TextRuleCondition.Text. olConditionRecipientAddress
Dirección del remitente contiene palabras especificadas en TextRuleCondition.Text. olConditionSenderAddress No
El remitente está en la lista de direcciones especificada en AddressRuleCondition.Address. olConditionSenderInAddressBook No
El mensaje está marcado con el nivel de confidencialidad especificado. olConditionSensitivity No
Los destinatarios, especificados en los campos Para y CC, están en la lista de destinatarios especificada en ToOrFromRuleCondition.Recipients. olConditionSentTo
El tamaño del mensaje se encuentra entre x e y, expresados en KB, donde x e y son valores de Fecha. Por ejemplo, "10;50" establece la condición de tamaño entre 10 y 50 KB. olConditionSizeRange No
El asunto contiene palabras especificadas en TextRuleCondition.Text. olConditionSubject
Mi nombre se encuentra en el cuadro Para. olConditionTo No
El mensaje tiene mi nombre en el cuadro Para o CC. olConditionToOrCc No
Condición de regla no reconocida. olConditionUnknown No No

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.