我在理解 HeaderRowRange 的工作方式时遇到了一些问题。让我们看看:根据文档:
headersRowrange 是一个范围
所以这应该工作:
Dim ftsTbl As ListObject
Set ftsTbl = ThisWorkbook.Sheets(1).ListObjects(1)
MsgBox ("ftsTbl.HeaderRowRangeD1:" & ftsTbl.HeaderRowRange("D1").Address)
但它没有。(无效的过程调用或参数)为什么?以下工作也不起作用:
MsgBox ("ftsTbl.HeaderRowRangeD1:" & ftsTbl.HeaderRowRange("D1").item(1).Address)
我真正需要做的是在这个 listObject 中获得以下范围:
我需要从 D1 到 D6 列的列表对象标题的范围。我认为我可以像这样使用 Range( cell1 ,cellX) :
Dim ftsTbl As ListObject
Set ftsTbl = ThisWorkbook.Sheets(1).ListObjects(1)
Dim DocsHeadersRange As Range
'Set DocsHeadersRange = ThisWorkbook.Sheets(1).Range(ftsTbl.HeaderRowRange("D1"), ftsTbl.ListColumns("D6").DataBodyRange.iTem(ftsTbl.ListRows))
但它不起作用。为什么?
我在 sheet(1) 中定义了一堆范围,以便在
Sub Worksheet_SelectionChange(ByVal Target As Range)
Set Overlap = Intersect(***defined range of listobject***, Selection)
If Not Overlap Is Nothing Then
If Overlap.Areas.Count = 1 And Selection.Count = Overlap.Count Then
...etc
谢谢干杯