background image

5
6

sheet1.get_Range("A1", "C10); //和上一行效果一样(左上角 A1 到右下角

C10 区域单元格) 

sheet1.get_Range("A:A", Type.Missing); //返回整个 A

 

sheet1.get_Range("A:C", Type.Missing); //返回 A 到 C

 

sheet1.get_Range("3:3", Type.Missing); //返回 A 到 C

 

sheet1.get_Range("A1:A5, C1:C5", Type.Missing); //返回两个独立的区

除了获取一个区域的值, 获得单个单元格值的方法:

1
2

Range rng1 = (Range)sheet1.Cells[1, 1]; //获取 A1

 

单元格

Range rng2 = (Range)sheet1.Cells[3, "C]; //获取 C3

 

单元格

Range rng3 = (Range)sheet1.Cells[2, Type.Missing]; //获取 B1 单元格

Range 对象除了 Value2 属性, 还有 Value 属性, 只有当涉及日期和货币格式才
使用这个属性. 否则, 为保持程序简洁和一致性, 应该使用 Value2 属性.
Range 对象还有个只读属性: Text, 该属性虽然是 Object 类型的, 但所有值类型
都是按文本方式进行处理的. 所以在使用这个 Text 属性时, 如果已经确定这个文
本的数据类型时, 可以使用 Parse 方法把文本转变成该数据类型. 如果不能确定, 
则可以使用 TryParse 方法.
除此之外, Range 对象中如果某个或某些单元格的值全为数字, 而我们不想按数
字来处理这些值, 想把它转变成文本或是其它格式. 可以使用 Range 的
NumberFormat 属性.
操作 Excel 表格, 还有个专门的控件叫做 SpreedSheet 控件, 不过在我做东西的
时候, 想把日期格式的数据正确显示在这个控件中出现了不少问题, 最后还是舍弃
了使用这个控件. 最后还是选择了比较常见的 DataGridView -_-