diff -u -r ../../../sc.bak/source/core/data/table2.cxx sc/source/core/data/table2.cxx
--- ../../../sc.bak/source/core/data/table2.cxx	2004-12-22 14:05:08.000000000 +0530
+++ sc/source/core/data/table2.cxx	2005-01-06 16:31:44.128926640 +0530
@@ -2388,7 +2388,12 @@
 		}
 
 		if (bShow)
-            pRowFlags->AndValue( nStartRow, nEndRow, ~(CR_HIDDEN | CR_FILTERED));
+            	{
+			for (int i=nRow1; i<=nRow2; i++)
+		 	{	if (! this->IsFiltered(i))
+					pRowFlags->AndValue( i, ~(CR_HIDDEN ) );
+			}
+		}
 		else
             pRowFlags->OrValue( nStartRow, nEndRow, CR_HIDDEN);
 
