奇怪的事情发生了,我有一个带有名为“CIV”的筛选字段的透视表,我要做的是在每次迭代中,从筛选器中选择一个项目。
但是,当打印到控制台时,只有筛选项显示为“True”(该项是excel文件中当前选定的项),因此显示为“item.Visible = true;“不起作用。
myPivotField = (Excel.PivotField)myPivotTable.PivotFields("CIV");
int j = 0;
foreach (Excel.PivotItem item in myPivotField.PivotItems())
{
j++;
item.Visible = true;
Thread.Sleep(100);
Console.WriteLine(j + " - " + item.Name + " - " + item.Visible);
}
理论上,所有的项都应该以“TRUE”值出现在控制台中,因为在每次迭代中我都是这样设置它们的,然而,只有第一个字段出现在“TRUE”中。
我不明白为什么它停止工作了,在之前的一次执行中,它确实开始这样做了,现在它不再这样做了,代码中有什么问题吗?
我的想法是,在每次迭代中,它总是从筛选字段中的第一项开始到最后一项(不管在excel文件中选择了第一项以外的任何项)。
1条答案
按热度按时间nom7f22z1#
我已经能够通过如下迭代来解决这个问题: