首页 新闻 会员 周边

C#如何获取Excel中被计算的单元格集合

0
悬赏园豆:50 [已关闭问题]

需求是这样的,Excel中有两张Sheet(“原始数据”和“最终结果”),“最终结果”这个sheet展示“原始数据”经过公式加工后的结果。

在程序中将Excel载进来,通过更新“原始数据”使“最终结果”自动完成计算,计算完成后,从“最终结果”中取出数据展示到界面。

现在的问题是如何获取被计算的单元格集合,因为每次只更新“原始数据”中的一部分单元格数据,因此“最终结果”中也只是一部分单元格被重新计算。

查了下MSDN,发现Worksheet中有两个事件ChangeCalculateChange事件是在 Worksheet 单元格中的某些内容发生更改时发生,但是当单元格在重新计算的过程中发生更改时,不发生此事件。而Calculate事件是在重新计算工作表之后发生,但是该事件没有任何事件参数指示到底是哪些单元格被重新计算,示例如下。


private void WorksheetCalculate()
{
this.Calculate += new
Excel.DocEvents_CalculateEventHandler(
Worksheet1_Calculate);
}

void Worksheet1_Calculate()
{
MessageBox.Show(
this.Name + " is being calculated");
}

 

该如何获取Excel中被计算的单元格集合呢?

Kolor的主页 Kolor | 初学一级 | 园豆:55
提问于:2009-11-24 10:20
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册