1
在VSTO(C#)项目中,我想采用UsedRange,包括图形和图表等形状对象。获取包含所有形状对象的Excel范围
1.是否有一种方法来获得UsedRange与形状对象?
因为我找不到这样的方法,我想通过使用这种计算边缘:
foreach (Excel.Shape shape in shapeObjects)
{
float shapeBottom = shape.Top + shape.Height;
float shapeRight = shape.Left + shape.Width;
if (maxBottom < shapeBottom)
{
maxBottom = shapeBottom;
}
if (maxRight < shapeRight)
{
maxRight = shapeRight;
}
}
Excel.Range r = <XXX>(maxBottom, maxRight);
所以现在我有正从maxBottom和maxRight范围的问题。
2.有没有办法通过给出宽度和高度来获取Range对象?
形状有一个'BottomRightCell'属性,它返回形状右下角覆盖的单元格。如果您针对每个形状遍历该属性,则应该能够收集所需范围的最右侧列和最后一行。您的范围的整个角落是否固定? –
是的,这解决了我的问题1(所以没问题2)。请作为答复发布。 谢谢! –