Método ViewFields.Add (Outlook)
Agrega el campo especificado al final de la colección ViewFields para la vista.
Sintaxis
expresión. Add (PropertyName)
Expresión Variable que representa un objeto ViewFields .
Parameters
Nombre | Obligatorio/opcional | Tipo de datos | Descripción |
---|---|---|---|
PropertyName | Obligatorio | String | Nombre de la propiedad a la que está asociado el nuevo objeto. Se puede hacer referencia a esta propiedad por nombre de campo (que se muestra en el selector de campos) o por espacio de nombres (representado por ViewField.ViewXMLSchemaName). |
Valor devuelto
Objeto ViewField que representa el nuevo campo de vista.
Comentarios
Para agregar mediante programación un campo personalizado a una vista, use el método ViewFields.Add. Esta es la manera recomendada para cambiar dinámicamente la vista sobre establecer el valor de la propiedad XML del objeto View.
Para hacer referencia a la propiedad en PropertyName mediante su nombre de campo se requiere el nombre localizado en la configuración regional correspondiente. Para obtener más información sobre cómo hacer referencia a las propiedades por espacio de nombres, consulte el tema sobre cómo hacer referencia a propiedades por espacio de nombres.
Si va a agregar una propiedad personalizada a la colección ViewFields , la propiedad debe existir en la colección UserDefinedProperties de la carpeta primaria de la vista.
Si la propiedad ya existe en la colección ViewFields, Outlook generará un error.
Algunas propiedades no se puede agregar a una vista de uso de ViewFields.Add, como propiedades binarias, propiedades calculadas y contenido HTML o RTF. Para obtener más información, vea el tema sobre las propiedades no compatibles en un objeto Table o un filtro Table.
Ejemplo:
El siguiente ejemplo de código en Microsoft Visual Basic para aplicaciones (VBA), agrega el campo asunto a la vista actual de la Bandeja de entrada, hacer referencia a él por su nombre de campo. Para evitar generar un error de Outlook, comprueba la existencia del campo en la colección ViewFields que representa la vista actual de la Bandeja de entrada antes de agregarlo.
Sub DemoViewFieldsAdd()
Dim oTableView As Outlook.TableView
Dim oViewFields As Outlook.ViewFields
Dim oViewField As Outlook.ViewField
Dim oInbox As Outlook.folder
Set oInbox = Application.Session.GetDefaultFolder(olFolderInbox)
On Error GoTo Err_Handler
If oInbox.CurrentView.ViewType = olTableView Then
Set oTableView = oInbox.CurrentView
Set oViewField = oTableView.ViewFields("Subject")
If oViewField Is Nothing Then
Set oViewField = oTableView.ViewFields.Add("Subject")
End If
End If
Exit Sub
Err_Handler:
MsgBox Err.Description, vbExclamation
Resume Next
End Sub
El ejemplo siguiente de VBA se supone la vista actual es una TableView, hace referencia a la propiedad de clase de mensaje por espacio de nombres y lo agrega a la vista actual de la carpeta actual. Para evitar generar un error de Outlook, el código comprueba la existencia de esta propiedad en la vista antes de llamar a ViewFields.Add.
Sub ViewFieldsAdd()
Dim oFolder As Outlook.Folder
Dim oView As Outlook.TableView
Dim oViewField As Outlook.ViewField
On Error Resume Next
Dim PR_MESSAGE_CLASS As String
PR_MESSAGE_CLASS = "http://schemas.microsoft.com/mapi/proptag/0x001a001e"
Set oFolder = Application.ActiveExplorer.CurrentFolder
If oFolder.CurrentView.ViewType = olTableView Then
Set oView = oFolder.CurrentView
'Determine if the ViewField exists in ViewFields collection
If oView.ViewFields(PR_MESSAGE_CLASS) Is Nothing Then
Set oViewField = oView.ViewFields.Add(PR_MESSAGE_CLASS)
'Persist the changes
oView.Save
End If
End If
End Sub
Consulte 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.