ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Worksheet Functions (https://www.excelbanter.com/excel-worksheet-functions/)
-   -   sumif only for unhidden rows (https://www.excelbanter.com/excel-worksheet-functions/59793-sumif-only-unhidden-rows.html)

Bob Phillips

sumif only for unhidden rows
 
As you want manually hidden as well as autofiltered, try this UDF

First add this UDF


Function IsVisible(ByVal Target As Range)
Dim oRow As Range
Dim i As Long
Dim ary()
ReDim ary(1 To 1, 1 To Target.Rows.Count)
i = 0
For Each oRow In Target.Rows
i = i + 1
ary(1, i) = Not oRow.EntireRow.Hidden
Next oRow
IsVisible = ary
End Function


Then use this formula

=SUM(TRANSPOSE(isvisible(C1:C20))*(C1:C20))

which is an array formula, so commit with Ctrl-Shift-Enter.

If the rows are manually hidden, hiding/unhiding does not trigger the UDF,
so you will need to F9.


--
HTH

Bob Phillips

(remove nothere from email address if mailing direct)

"pwz" wrote in message
...
How to build a conditional sum formula for unhidden rows only (other rows
are hidden manually or by auto-filter)? Thanks in advance!

Regards,
Pat





Dave Peterson

sumif only for unhidden rows
 
If you're using xl2003, you could use =subtotal(). It was enhanced to be able
to ignore those manually hidden rows, too.

pwz wrote:

How to build a conditional sum formula for unhidden rows only (other rows
are hidden manually or by auto-filter)? Thanks in advance!

Regards,
Pat


--

Dave Peterson

pwz

sumif only for unhidden rows
 
How to build a conditional sum formula for unhidden rows only (other rows
are hidden manually or by auto-filter)? Thanks in advance!

Regards,
Pat



Domenic

sumif only for unhidden rows
 
Expanding on Dave's contribution and provided you have Excel 2003, since
you're looking for a conditional sum formula, you can use something like
the following formula for filtered data...

=SUMPRODUCT(SUBTOTAL(3,OFFSET(CondRange,ROW(CondRa nge)-MIN(ROW(CondRange)
),0,1)),--(CondRange=Criteria),RangeToSum)

For manually hidden rows, change the 3 to 103.

Hope this helps!

In article , "pwz"
wrote:

How to build a conditional sum formula for unhidden rows only (other rows
are hidden manually or by auto-filter)? Thanks in advance!

Regards,
Pat


pwz

sumif only for unhidden rows
 
Thanks Domenic! It works like a charm!



"Domenic" wrote in message
...
Expanding on Dave's contribution and provided you have Excel 2003, since
you're looking for a conditional sum formula, you can use something like
the following formula for filtered data...

=SUMPRODUCT(SUBTOTAL(3,OFFSET(CondRange,ROW(CondRa nge)-MIN(ROW(CondRange)
),0,1)),--(CondRange=Criteria),RangeToSum)

For manually hidden rows, change the 3 to 103.

Hope this helps!

In article , "pwz"
wrote:

How to build a conditional sum formula for unhidden rows only (other

rows
are hidden manually or by auto-filter)? Thanks in advance!

Regards,
Pat




pwz

sumif only for unhidden rows
 
Thanks to Bob too!


"Bob Phillips" wrote in message
...
As you want manually hidden as well as autofiltered, try this UDF

First add this UDF


Function IsVisible(ByVal Target As Range)
Dim oRow As Range
Dim i As Long
Dim ary()
ReDim ary(1 To 1, 1 To Target.Rows.Count)
i = 0
For Each oRow In Target.Rows
i = i + 1
ary(1, i) = Not oRow.EntireRow.Hidden
Next oRow
IsVisible = ary
End Function


Then use this formula

=SUM(TRANSPOSE(isvisible(C1:C20))*(C1:C20))

which is an array formula, so commit with Ctrl-Shift-Enter.

If the rows are manually hidden, hiding/unhiding does not trigger the UDF,
so you will need to F9.


--
HTH

Bob Phillips

(remove nothere from email address if mailing direct)

"pwz" wrote in message
...
How to build a conditional sum formula for unhidden rows only (other

rows
are hidden manually or by auto-filter)? Thanks in advance!

Regards,
Pat








All times are GMT +1. The time now is 09:59 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com