Propriedade Range.DisplayFormat (Excel)

Retorna um objeto DisplayFormat que representa as configurações de exibição para o intervalo especificado. Somente leitura.

Sintaxe

expressão. Displayformat

expressão Uma variável que representa um objeto de Intervalo.

Valor de retorno

DisplayFormat

Comentários

DisplayFormat é afetado pela formatação condicional, conforme mostrado no código abaixo. Ele adiciona formatação condicional à Célula A1 no ActiveSheet. Essa formatação arroja a célula, altera a cor interior para vermelho e adiciona um padrão de verificador.

Public Sub DemonstrateConditionalFormattingAffectsDisplayFormat()
    Dim inputArea As Range
    Set inputArea = ActiveSheet.Range("A1")
    
    Dim addedFormatCondition As FormatCondition
    Set addedFormatCondition = inputArea.FormatConditions.Add(xlExpression, Formula1:="=true")
    addedFormatCondition.Font.Bold = True
    addedFormatCondition.Interior.Color = XlRgbColor.rgbRed
    addedFormatCondition.Interior.Pattern = XlPattern.xlPatternChecker
    
    Debug.Print inputArea.Font.Bold 'False
    Debug.Print inputArea.Interior.Color 'XlRgbColor.rgbWhite
    Debug.Print inputArea.Interior.Pattern 'XlPattern.xlPatternNone
    
    Debug.Print inputArea.DisplayFormat.Font.Bold 'True
    Debug.Print inputArea.DisplayFormat.Interior.Color 'XlRgbColor.rgbRed
    Debug.Print inputArea.DisplayFormat.Interior.Pattern 'XlPattern.xlPatternChecker
End Sub

Observe que a propriedade DisplayFormat não funciona em UDF (Funções Definidas pelo Usuário). Por exemplo, em uma função de planilha que retorna a cor interior de uma célula, você usa uma linha semelhante a: Range(n).DisplayFormat.Interior.ColorIndex. Quando a função de planilha é executada, ela retorna um erro #VALUE!

Em outro exemplo, você não pode usar a propriedade DisplayFormat em uma função de planilha para retornar as configurações de um determinado intervalo. No entanto, o DisplayFormat funcionará em uma função chamada de VBA (Visual Basic for Applications). Por exemplo, na seguinte UDF:

Function getDisplayedColorIndex()
   getColorIndex = ActiveCell.DisplayFormat.Interior.ColorIndex
End Function

Chamar a função de uma planilha da seguinte maneira =getDisplayedColorIndex() retorna o erro #VALUE! . Como tal, se a formatação condicional for aplicada a um intervalo, não haverá como retornar esse valor com uma UDF. Se a formatação condicional tiver sido aplicada, obtenha o índice de cores da célula ativa chamando o painel Imediato no Editor do Visual Basic.

Se nenhuma formatação condicional for aplicada, use a função abaixo para retornar o índice de cor da célula ativa. A função a seguir funcionará de uma planilha ou de VBA.

Function getAppliedColorIndex()
   getColorIndex = ActiveCell.Interior.ColorIndex
End Function

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.