次の方法で共有


Table.ConvertToText メソッド (Word)

テーブルをテキストに変換し、区切られた文字列を表す Range オブジェクトを取得します。

構文

expression. ConvertToText( _Separator_ , _NestedTables_ )

expression 必須です。 'Table' オブジェクトを表す変数。

パラメーター

名前 必須 / オプション データ型 説明
Separator 省略可能 バリアント型 (Variant) (段落記号は、変換後の行を区切る) 変換後の列を区切る文字です。 段落 記号をすることができます。
NestedTables 省略可能 バリアント型 (Variant) True の 場合、入れ子になったテーブルは、テキストに変換されます。 WdSeparateByParagraphs が区切り記号でない場合、この引数は無視されます。 既定値は True です。

注釈

Table オブジェクトに ConvertToText メソッドを適用すると、オブジェクトが削除されます。 テーブルの変換後の内容への参照を維持するためには、新しいオブジェクト変数に ConvertToText メソッドによって返される Range オブジェクトを割り当てる必要があります。 次の例では、作業中の文書の最初の表はテキストに変換され、箇条書きの書式が設定します。

Dim tableTemp As Table 
Dim rngTemp As Range 
 
Set tableTemp = ActiveDocument.Tables(1) 
Set rngTemp = _ 
 tableTemp.ConvertToText(Separator:=wdSeparateByParagraphs) 
 
rngTemp.ListFormat.ApplyListTemplate _ 
 ListTemplate:=ListGalleries(wdBulletGallery).ListTemplates(1)

次の使用例は、表を作成し、区切り文字にタブを使用して、この表を文字列に変換します。

Dim docNew As Document 
Dim tableNew As Table 
Dim intTemp As Integer 
Dim cellLoop As Cell 
Dim rngTemp As Range 
 
Set docNew = Documents.Add 
Set tableNew = docNew.Tables.Add(Range:=Selection.Range, _ 
 NumRows:=3, NumColumns:=3) 
 
intTemp = 1 
 
For Each cellLoop In tableNew.Range.Cells 
 cellLoop.Range.InsertAfter "Cell " & intTemp 
 intTemp = intTemp + 1 
Next cellLoop 
 
MsgBox "Click OK to convert table to text." 
Set rngTemp = _ 
 tableNew.ConvertToText(Separator:=wdSeparateByTabs)

次の使用例は、選択範囲が含まれる表を、列をスペースで区切って文字列に変換します。

If Selection.Information(wdWithInTable) = True Then 
 Selection.Tables(1).ConvertToText Separator:=" " 
Else 
 MsgBox "The insertion point is not in a table." 
End If

関連項目

テーブル オブジェクト

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。