昨天研究用Excel在Studio2005中制作报表。首先就是要将一些单元格合并到一起。用到了Merge方法的时候。在网上找了无数方法,都是提示报错。而且是同一个错误的返回值。看来问题并没有出在Range.Merge(object Across)中的Across的类型上面,不管是用Type.Missing或者是用False,把Range的Vaule2值设为Type.Missing。都是错的。拆腾了将近二个小时还是没有结果,随手打开了宏写的代码,一下子就明白了,只要加上一个Range.Select()就可以了,代码如下:
Excel.Worksheet WorkSheet = (Excel.Worksheet)Globals.ThisWorkbook.Worksheets.get_Item(1);
Excel.Range ThisRange = null;
ThisRange = (Excel.Range)WorkSheet.get_Range("A1", RowChar + "1");
ThisRange.Select();
ThisRange.Merge(false);
问题就解决了。
Excel.Worksheet WorkSheet = (Excel.Worksheet)Globals.ThisWorkbook.Worksheets.get_Item(1);
Excel.Range ThisRange = null;
ThisRange = (Excel.Range)WorkSheet.get_Range("A1", RowChar + "1");
ThisRange.Select();
ThisRange.Merge(false);
问题就解决了。