日期:2010-09-07 浏览次数:20428 次
效果图如下:
代码如下:
/**//// <summary>
/// 合并工作表中指定行数和列数数据相同的单元格
/// </summary>
/// <param name="sheetIndex">工作表索引</param>
/// <param name="beginRowIndex">开始行索引</param>
/// <param name="beginColumnIndex">开始列索引</param>
/// <param name="rowCount">要合并的行数</param>
/// <param name="columnCount">要合并的列数</param>
public void MergeWorkSheet(int sheetIndex,int beginRowIndex,int beginColumnIndex,int rowCount,int columnCount)
{
//检查参数
if ( columnCount < 1 || rowCount < 1)
return ;
for(int col=0;col<columnCount;col++)
{
int mark = 0; //标记比较数据中第一条记录位置
int mergeCount = 1; //相同记录数,即要合并的行数
string text = "";
for(int row=0;row<rowCount;row++)
{
string prvName = "";
string nextName = "";
//最后一行不用比较
if( row + 1 < rowCount)
{
for(int n=0;n<=col;n++)
{
range = (Excel.Range)workSheet.Cells[row + beginRowIndex,n + beginColumnIndex];
range = (Excel.Range)range.MergeArea.get_Item(1,1);
&n