将表格转换为文本并返回一个 Range 对象,该对象代表带分隔符的文本。
expression.ConvertToText(Separator, NestedTables)
expression 必需。该表达式返回一个 Row、Rows 或 Table 对象。
Separator Variant 类型,可选。用以分隔被转换列的分隔符(被转换行由段落标记分隔)。可以是下列 WdTableFieldSeparator 常量之一。
WdTableFieldSeparator 可以是下列 WdTableFieldSeparator 常量之一: |
wdSeparateByCommas |
wdSeparateByDefaultListSeparator |
wdSeparateByParagraphs |
wdSeparateByTabs 默认值。 |
NestedTables Variant 类型,可选。如果为 True,则将嵌套的表格转换为文本。如果 Separator 不是 wdSeparateByParagraphs,则此参数将被忽略。其默认值为 True。
将 ConvertToText 方法应用于一个 Table 对象时,该对象将被删除。如果要保留对已转换的表格内容的引用,就必须为 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