![]()  | 
	
| 
		 
			 
			#1  
			 
			
			
			
			
		 
		
	 | 
|||
		
		
  | 
|||
| 
		
	
		
		
			
			 
			
			I have created a method to count the number of cells in a range taking into consideration that merged cell are counted as one cell. 
		
		
		
		
		
		
		
		
			Here is the method private static int getRangeCount(Range Target) { if (Target == null) return 0; if (Target.Cells == null) return 0; if (Target.Cells.Count <= 1) return Target.Cells.Count; int count = 0; foreach (Range cell in Target) { if (cell.MergeCells != null && cell.MergeCells is bool && (bool)cell.MergeCells) { Range rng = (Range)cell.MergeArea[1, 1]; if (!Microsoft.Office.Tools.Excel.ExcelLocale1033Prox y.ReferenceEquals(cell, rng)) { string str1 = WorkbookUtils.GetAddress(cell, XlReferenceStyle.xlA1); string str2 = WorkbookUtils.GetAddress(rng, XlReferenceStyle.xlA1); if (str1 == str2) count++; } } else count++; } return count; } My problem now is that a user is using this method on a range with 8448 cells. Because the target is so big the method takes a very very very long time. Is there a way to improve the above code? Last edited by danbenedek; 06-15-2010 at 12:42 AM. Reason: code review  | 
 
 | 
	
	
| Tags | 
| vba | 
| 
		 | 
			 
			Similar Threads
		 | 
	||||
| Thread | Thread Starter | Forum | Replies | Last Post | 
		
		  Cut and paste a range of cells and preserve formatting
	 | 
	StarWeaver | Excel | 1 | 03-02-2010 01:41 PM | 
		
		  Moving formula range multiple cells when moving sum over one cell
	 | 
	FraserKitchell | Excel | 4 | 02-26-2010 10:38 AM | 
| How to merge matching cells vertically? | Odiseh | Excel | 1 | 01-02-2010 02:41 PM | 
| Nested if formulat to merge cells | cristi22 | Excel | 0 | 10-23-2006 08:28 AM | 
| How to count cells containing data and meet certain criteria | AdamNT | Excel | 1 | 08-11-2006 11:51 PM |