how to detect merged cells in c# using MS interop excel -


i want detect merged cells either in row/entire sheet(preferable).here code

microsoft.office.interop.excel.application xl = new microsoft.office.interop.excel.application();  microsoft.office.interop.excel.workbook workbook = xl.workbooks.open(source); //microsoft.office.interop.excel.worksheet ws = (microsoft.office.interop.excel.worksheet)workbook.sheets[sheetnumber]; microsoft.office.interop.excel.worksheet ws = (microsoft.office.interop.excel.worksheet)workbook.worksheets[objinmemory._sheetname]; xl.screenupdating = false; ws.columns.clearformats(); ws.rows.clearformats(); int colcount = ws.usedrange.columns.count; int rowcount = ws.usedrange.rows.count; int strtrow = ws.usedrange.rows[1].row; int strtcol = ws.usedrange.columns[1].column;    microsoft.office.interop.excel.range objrange = null; 

neither piece of code

if (ws.cells.mergecells) {  } 

nor piece of code(only row1)

for (int j = strtcol; j < strtcol + colcount; j++) {     objrange = ws.cells[strtrow, j];      if (ws.cells[strtrow, j].mergecells)     {         message = "the sheet contains merged cells";         break;     }   } 

seem work..kindly let me know how check if sheet/specific range contains merged cells.

if want check if range contains merged cells, mergecells property you're after.

if range merged, return true. if range contains merged cells (i.e. merged, aren't), return dbnull.value.

so, should work entire sheet:

object mergecells = ws.usedrange.mergecells; var containsmergedcells = mergecells == dbnull.value || (bool)mergecells; 

Comments

Popular posts from this blog

java - HTTP Status 500 - An exception occurred processing JSP page /second.jsp at line 15 -

php - Using str_replace to translate a MySQL Table in html -

SQL Server - MyCTE query based on 24 hour period (next day) -