セルの文字列を取得(Text プロパティ)
2015/08/23
Text プロパティ
セルに表示されている文字列を取得します。Text プロパティは、取得のみで、設定することはできません。
result = Object.Text
引数・戻り値
- object ・・・ 対象となる Range オブジェクトを指定します。
- result ・・・ 指定されたオブジェクト(セル)に表示される文字列(内部処理形式 String のバリアント型)
Value プロパティとの違いについて
Value プロパティ は、純粋な値や数式の計算結果を取得します。
Text プロパティ は、セルの 見た目の値 を取得します。数値や日付などに書式が設定されている場合は、そのセルに表示されている文字列をそのまま取得します。また、セル幅が狭くて表示しきれない場合等、「####」のように表示される場合がありますが、この「####」も Text プロパティで取得できます。
Text プロパティ 使用例
サンプルVBAソース
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
Sub Sample_Text() Dim myRng, v, str Set myRng = Range("A2:F2") For Each v In myRng str = str & "Value:" & v.Value & Chr(9) & "Text:" & v.Text & Chr(9) & "Formula:" & v.Formula & Chr(13) Next v MsgBox str End Sub |
実行結果
Text プロパティ 使用例 2
サンプルVBAソース
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
Sub Sample02_Text() 'セル幅が狭く数値等が表示されていない(### など表示)場合を '判定し、表示されるように調整する。 '判定方法は、セル幅が狭く# が表示されている場合は、Value値は、数値や日付を、 'Text値は、セルに表示されている文字列を取得できるので、それを利用。 '※ エラーや「#」で始まる文字列等は、無視 Dim myRng As Range, i As Long, Fsize As Integer Set myRng = Range("B3:E10") For i = 1 To myRng.Count '数式エラー以外 If Not IsError(myRng(i).Value) Then '「#」から始まり、Value値とText値が異なる If Left(myRng(i).Text, 1) = "#" And myRng(i).Value <> myRng(i).Text Then '縮小表示 myRng(i).ShrinkToFit = True End If End If Next i End Sub |
実行結果
サンプルVBA実行前
実行後
関連記事
-
-
セルのアドレスを確認(Address プロパティ)
Address プロパティ Address プロパティ・AddressLocal …
-
-
セル・セル範囲に名前を定義・削除(Name プロパティ・Names コレクション)
セル・セル範囲に名前を定義(Name プロパティ) Range オブジェクトのN …
-
-
セルが結合セルの一部である場合、その結合セルの範囲を取得(MergeArea プロパティ)
MergeArea プロパティ MergeArea プロパティは、指定したセルが …
-
-
セル範囲内を検索(Find メソッド)
Find メソッド 指定したセル範囲内の特定の情報を含むセルを検索します。 【書 …
-
-
入力規則(エラーメッセージの設定)Validation オブジェクト
無効値を入力時に、エラーメッセージの表示 Validation.ShowErro …
-
-
終端セルを参照する(End プロパティ)
End プロパティ End プロパティは、基準となるセルが含まれる領域の指定した …
-
-
セルを削除する(Delete メソッド)
Delete メソッド Delete メソッドで、指定したセル・セル範囲を削除し …
-
-
VBA で、ワークシート関数を使用(WorksheetFunction プロパティ)
VBA で、ワークシと関数を使用 VBA から、ワークシート関数を呼び出す場合、 …
-
-
セル内部を参照(Interior プロパティ)
Interior プロパティ Interior プロパティで、セルの内部を参照し …
-
-
セルの値を置換(Replace メソッド)
Replace メソッド 任意のセル範囲内から特定の値を一括して置換します。Fi …


