Range.Text プロパティ (Excel)
指定したオブジェクトの書式付きテキストを返します。 値の取得のみ可能な String 値です。
構文
式。テキスト
expression は Range オブジェクトを表す変数です。
注釈
Text プロパティは、ほとんどの場合、1 つのセルの範囲に使用されます。 範囲に複数のセルが含まれている場合、 範囲内 のすべてのセルの内容と形式が同じである場合を除き、Text プロパティは Null を返します。
セルの内容が表示に使用できる幅よりも広い場合は、 Text プロパティによって表示される値が変更されます。
プロパティの相違点の例
この例では、書式設定された数値を含むセルの Text プロパティと Value プロパティの違いを示します。
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
テキスト幅の違い
列の幅が十分でない場合、数値を含むセルの表示値が変更される場合があります。 次の例は、2 つの列を使用してこれを示しています。 最初の列は、値を表示するのに十分な幅です。 形式が適用され、完全な値を示す値が入力されます。 2 番目の列の幅が小さくなり、セルの上にセルがコピーされるときに幅が狭くなりすぎて、表示される値がモディファイされます。
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
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。