ListObjects.Add 方法 (Excel)
创建新的列表对象。
语法
表达式。添加 (SourceType、 Source、 LinkSource、 XlListObjectHasHeaders、 Destination、 TableStyleName)
表达 一个代表 ListObjects 对象的变量。
参数
名称 | 必需/可选 | 数据类型 | 说明 |
---|---|---|---|
SourceType | 可选 | XlListObjectSourceType | 表示查询的来源类型。 |
Source | 可选 | Variant | 当 SourceType = xlSrcRange:一个代表数据源的 Range 对象。 如果省略, 则 Source 将默认为列表范围检测代码返回的范围。 当 SourceType = xlSrcExternal: 字符串值的数组 ,指定与源的连接,包含以下元素:
当 SourceType = xlSrcModel:接受 WorkbookConnection 对象 (请参阅 TableObject ,例如) 。 |
LinkSource | 可选 | Boolean | 表示外部数据源是否链接到 ListObject 对象。 如果 SourceType 为 xlSrcExternal,则默认值为 True。 如果 SourceType 为 xlSrcRange,则此参数无效,如果不省略它,将会返回一个错误。 |
XlListObjectHasHeaders | 可选 | Variant | 一个 XlYesNoGuess 常量,指示导入的数据是否具有列标签。 如果 Source 没有标题,Excel 将自动生成标题。 默认值: xlGuess。 |
目标 | 可选 | Variant | 一个 Range 对象,作用是将一个单元格引用指定为新列表对象左上角的目标区域。 如果 Range 对象引用多个单元格,则会生成错误。 当 SourceType 设置为 xlSrcExternal 时,必须指定 Destination 参数。 如果 SourceType 设置为 xlSrcRange,则忽略 Destination 参数。 目标区域必须位于包含表达式指定的 ListObjects 集合的工作表上。 新列的插入位置将是 Destination 以适应新列表。 因此,现有数据不会被覆盖。 |
TableStyleName | 可选 | 字符串 | TableStyle 的名称;例如“TableStyleLight1”。 |
返回值
一个代表新列表对象的 ListObject 对象。
备注
当列表有标题时,第一行单元格将转换为 Text(如果还未被设为文本)。 转换将基于单元格的可见文本。 这意味着,如果有一个日期值,该日期值的 Date 格式随区域设置的更改而更改,则对列表的转换可能产生不同的结果,具体取决于当前的系统区域设置。 而且,如果标题行中有两个单元格包含相同的可见文本,则会追加递增的 Integer 以使每个列标题唯一。
示例
以下示例将基于 Microsoft SharePoint Foundation 网站中的数据的新 ListObject 对象添加到默认 ListObjects 集合,并将列表置于工作簿第一张工作表的单元格 A1 中。
注意
下面的代码示例假定你将替换变量 strServerName
strListGUID
和 中的有效服务器名称和列表 guid。 此外,服务器名称必须后跟 "/_vti_bin" (strListName)
,否则示例将不起作用。
Set objListObject = ActiveWorkbook.Worksheets(1).ListObjects.Add(SourceType:= xlSrcExternal, _
Source:= Array(strServerName, strListName, strListGUID), LinkSource:=True, _
XlListObjectHasHeaders:=xlGuess, Destination:=Range("A1")),
TableStyleName:=xlGuess, Destination:=Range("A10"))
支持和反馈
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。