Range.Text, propriété (Excel)

Renvoie le texte mis en forme pour l’objet spécifié. String en lecture seule.

Syntaxe

expression. Texte

expression Variable représentant un objet Range.

Remarques

La propriété Text est le plus souvent utilisée pour une plage d’une cellule. Si la plage comprend plusieurs cellules, la propriété Text renvoie null, sauf si toutes les cellules de la plage ont un contenu et des formats identiques.

Si le contenu de la cellule est plus large que la largeur disponible pour l’affichage, la propriété Text modifie la valeur affichée.

Exemple de différences de propriété

Cet exemple illustre la différence entre les propriétés Text et Value des cellules qui contiennent des nombres mis en forme.

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

Différences de largeur du texte

La valeur affichée des cellules contenant des valeurs numériques peut être modifiée lorsque la colonne n’est pas assez large. L’exemple ci-dessous le montre à l’aide de deux colonnes. La première colonne est suffisamment large pour afficher les valeurs. Un format est appliqué, puis une valeur entrée indiquant la valeur complète. La largeur de la deuxième colonne est réduite de telle sorte que, lorsque les cellules sont copiées, elle est trop étroite, ce qui entraîne la moïse de la valeur affichée.

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

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.