从C#中的Excel操作 – 设置ActiveCell?
我目前正在尝试将一些VB6macros移到C#应用程序中,而我在使用C#设置活动单元格时遇到了问题。
在VB6中它简单地说:
ActiveSheet.Range("L1").Select
有谁知道C#等价物是什么?
提前欢呼。
以下是一段代码示例:
Excel.Worksheet sht = (Excel.Worksheet)ActiveSheet; sht.Cells[3, 3] = "HELLO";
你也可以捕捉范围:
Excel.Range rng = (Excel.Range)sht.Cells[3, 3];
我相信你只是select方法像以前一样select一个范围,但我没有testing过这个。
rng.Select();
你可以明显地简化这些并且把这些陈述连在一起,并且正确的投射。 我不想冒这个猜测,因为我没有从我这里打开VSTO项目。
编辑
你也应该能够使用get_Range
从表单中获取一个范围:
rng = sht.get_Range("A1", Type.Missing);
VSTO往往会在大部分时间返回对象,因此需要强制转换,但是get_Range
是个例外。 有人可能会纠正我,因为我不是VSTO的大用户(当谈到Excel时,VBA仍然很难)。