我有一个模板excel文件,我从SQL Server OLEDB连接器中填入数据。该文件包含一些数据透视表,这些数据透视表引用数据库填充的数据集。Excel Interop - 如何更改命名范围
目前我所做的是使用“Data!$ A:$ K”范围来选择工作表中的所有行。这会在数据透视表中显示空白值时出现问题。
我想要做的是在数据集上创建一个命名表并将数据透视表引用到该数据表中(另外我还获得了名称表带来的一些其他优点)。
行数自然不会设置,所以我想找到一种方法来将命名的范围范围设置为实际值。
我使用的是Excel Interop和C#,我无法找到改变范围的方法。我只得到:
oRng = oSheet.get_Range("Transactions");
它选择指定范围。但是,如何更改属于它的哪些单元?
或者我应该追求更好的解决方案吗?
编辑
动态范围是答案!
我解决了这个感谢@TimWilliams回复:
“在模板中使用的动态范围:http://ozgrid.com/Excel/DynamicRanges.htm”
我觉得动态范围更好地说明如下:http://www.contextures.com/xlpivot01.html
我遇到了一个轻微的问题,我不能使用数据透视表中的范围,因为它要求它至少需要2行才能操作 - 模板文件只有列标题。我向第二行的第一个单元添加了一个随机字符串,并且数据透视表接受了该字段我不得不使用C#代码删除那行。
谢谢你们的帮助。
在您的模板中使用动态范围:http://www.ozgrid.com/Excel/DynamicRanges.htm – 2012-03-20 18:54:40
它的工作!谢谢! – 2012-03-20 21:31:20