Partilhar via


Propriedade Range.Text (Excel)

Devolve o texto formatado para o objeto especificado. String somente leitura.

Sintaxe

expressão. Texto

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

Comentários

A propriedade Texto é mais frequentemente utilizada para um intervalo de uma célula. Se o intervalo incluir mais do que uma célula, a propriedade Texto devolve Nulo, exceto quando todas as células do intervalo têm conteúdos e formatos idênticos.

Se o conteúdo da célula for mais largo do que a largura disponível para apresentação, a propriedade Texto modificará o valor apresentado.

Exemplo de Diferenças de Propriedades

Este exemplo ilustra a diferença entre as propriedades Texto e Valor das células que contêm números formatados.

Option Explicit

Public Sub DifferencesBetweenValueAndTextProperties()
    Dim cell As Range
    Set cell = Worksheets("Sheet1").Range("A1")
    cell.Value = 1198.3
    cell.NumberFormat = "$#,##0_);($#,##0)"
    
    MsgBox "'" & cell.Value & "' is the value." 'Returns: "'1198.3' is the value."
    MsgBox "'" & cell.Text & "' is the text."    'Returns: "'$1,198' is the text."
End Sub

Diferenças de Largura do Texto

As células que contêm valores numéricos podem ter o respetivo valor apresentado modificado quando a coluna não é suficientemente larga. O exemplo abaixo mostra-o com duas colunas. A primeira coluna é suficientemente larga para apresentar os valores. É aplicado um formato e, em seguida, é introduzido um valor que mostra o valor completo. A segunda coluna tem a largura reduzida de modo a que, quando as células são copiadas sobre a mesma, seja demasiado estreita, o que faz com que o valor apresentado seja moificado.

Public Sub TextWidthDifferences()
    
    Dim wideColumn As Range
    Set wideColumn = Sheet1.Range("B2")
    wideColumn.Value = "Wide Enough Column"
    wideColumn.Columns.AutoFit
    
    Sheet1.Range("B3").Value2 = 123456789
    
    Const CurrencyWith2DecimalsFormat As String = "$#,##0.00"
    Dim currencyCell As Range
    Set currencyCell = Sheet1.Range("B4")
    currencyCell.Value2 = 1234.56
    currencyCell.NumberFormat = CurrencyWith2DecimalsFormat
    
    Dim narrowColumn As Range
    Set narrowColumn = Sheet1.Range("C2")
    narrowColumn.Value = "Reduced Width Column"
    narrowColumn.ColumnWidth = 7.5
    
    Sheet1.Range("B3:B4").AutoFill Destination:=Sheet1.Range("B3:C4"), Type:=XlAutoFillType.xlFillDefault
    Debug.Print Sheet1.Range("C3").Text
    Debug.Print Sheet1.Range("C4").Text
End Sub

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.