我试图根据文档属性更改多个表中某个列的过滤器。
我有一些代码可以让我在当前过滤器方案上设置可见的过滤器,但是我不想向用户公开该过滤器。我已经找到了可让我直接访问表过滤器的代码段,但是我想基本上遍历表列表并在后台设置每个人的列过滤器。
user
这似乎并没有真正改变可见的过滤条件,即使在其中粘贴打印语句似乎表明过滤器值已更改。理想情况下,我会做类似的事情
page = Application.Document.ActivePageReference
#get the filter panel
filterPanel = page.FilterPanel
for fs in Document.FilteringSchemes:
if fs.FilteringSelectionReference.Name == "Filtering scheme":
filterPanel.FilteringSchemeReference = fs
filterPanel.InteractiveSearchPattern = "UPDATED_DATE"
for myFilter in filterPanel.FiltersMatchingSearchPattern:
thisFilter = myFilter.FilterReference.As[RangeFilter]()
if thisFilter != None:
newLow = Document.Properties['maxdate']
newHigh = thisFilter.ValueRange.High
newRange = ValueRange(newLow,newHigh)
thisFilter.ValueRange = newRange
filterPanel.InteractiveSearchPattern = ""
在这里我将遍历过滤方案中的所有表并设置该列,无论它是否可见。
任何帮助将不胜感激!