Método ViewFields.Add (Outlook)
Adiciona o campo especificado ao final do conjunto ViewFields para o modo de exibição.
Sintaxe
expressão. Adicionar (PropertyName)
Expressão Uma variável que representa um objeto ViewFields .
Parâmetros
Nome | Obrigatório/Opcional | Tipo de dados | Descrição |
---|---|---|---|
PropertyName | Obrigatório | String | O nome da propriedade à qual o novo objeto está associado. Essa propriedade pode ser referenciada pelo nome do campo (exibido no Seletor de Campo) ou pelo namespace (representado por ViewField.ViewXMLSchemaName). |
Valor de retorno
Um objeto ViewField que representa o novo campo do modo de exibição.
Comentários
Para adicionar um campo personalizado de maneira programática a uma exibição, use o método ViewFields.Add. Esta é a maneira recomendada de dinamicamente mudar o modo de exibição com a configuração da propriedade XML do objeto View.
Fazer referência à propriedade em PropertyName por seu nome de campo exige o nome localizado na localidade correspondente. Para obter mais informações sobre a referência às propriedades por namespace, consulte Fazendo referência às propriedades por namespace.
Se você estiver adicionando uma propriedade personalizada à coleção ViewFields , a propriedade deverá existir na coleção UserDefinedProperties para a pasta pai do View.
Se a propriedade já existir na coleção ViewFields, o Outlook irá gerar um erro.
Determinadas propriedades não podem ser adicionadas a um modo de exibição usando ViewFields.Add, incluindo propriedades binárias, propriedades computadas e conteúdo do corpo HTML ou RTF. Para obter mais informações, consulte Propriedades sem suporte em um objeto ou filtro Table.
Exemplo
O exemplo de código a seguir no Microsoft Visual Basic for Applications (VBA) adiciona o campo de assunto para o modo de exibição atual da caixa de entrada, referenciá-lo pelo seu nome de campo. Para evitar o aumento do erro do Outlook, testa a presença do campo no conjunto ViewFields que representa o modo de exibição atual da caixa de entrada antes de adicioná-lo.
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
O exemplo de código a seguir no VBA pressupõe que o modo de exibição atual é um TableView, referente à propriedade de classe da mensagem por namespace e o adiciona ao modo de exibição atual da pasta atual. Para evitar o aumento do erro do Outlook, o código verifica a existência dessa propriedade no modo de exibição antes de chamar 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
Confira também
Suporte e comentários
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.