Compartilhar via


Propriedade Range.DisplayFormat (Excel)

Devolve um objeto DisplayFormat que representa as definições de visualização do 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. Adiciona formatação condicional à Célula A1 no ActiveSheet. Esta formatação a negrito da 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

Tenha em atenção que a propriedade DisplayFormat não funciona nas Funções Definidas pelo Utilizador (UDF). Por exemplo, numa função de folha de cálculo que devolve a cor interior de uma célula, utiliza uma linha semelhante a: Range(n).DisplayFormat.Interior.ColorIndex. Quando a função da folha de cálculo é executada, devolve um erro #VALUE! .

Noutro exemplo, não pode utilizar a propriedade DisplayFormat numa função de folha de cálculo para devolver as definições de um determinado intervalo. No entanto, DisplayFormat funcionará numa função chamada de Visual Basic for Applications (VBA). Por exemplo, no seguinte UDF:

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

Chamar a função a partir de uma folha de cálculo da seguinte forma =getDisplayedColorIndex() devolve o erro #VALUE! . Como tal, se a formatação condicional for aplicada a um intervalo, não existe forma de devolver esse valor com um UDF. Se a formatação condicional tiver sido aplicada, obtenha o índice de cores para a célula ativa ao chamar o painel Imediato no Visual Basic Editor.

Se não for aplicada qualquer formatação condicional, utilize a função abaixo para devolver o índice de cores da célula ativa. A seguinte função funcionará a partir de uma folha de cálculo ou do 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.