Compartilhar via


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

Objeto ViewFields

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.