Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.misc
external usenet poster
 
Posts: 410
Default What is wrong with my UDF

I am trying to count how many in a range meet a condition. The twist
is that there is another column that the column needs to meet the
condition. I wanted it as a Function so I could show my work to
others who may have to view this. It calculates fine but then seems
to be stuck in a loop on recalculating. Any Help? Code below.

Thanks,
Jay

Function CountCondition(CntRng As Range, Cond As Double) As Variant

Dim X As Integer
Dim i
X = 0
For Each i In CntRng
If i.Offset(0, -4).Value = Cond And Right(i.Value, 4) = "2008"
Then
X = X + 1
End If
CountCondition = X
Next i

End Function
  #2   Report Post  
Posted to microsoft.public.excel.misc
external usenet poster
 
Posts: 11,501
Default What is wrong with my UDF

Works fine for me, what do you mean by re-calculating?

"jlclyde" wrote:

I am trying to count how many in a range meet a condition. The twist
is that there is another column that the column needs to meet the
condition. I wanted it as a Function so I could show my work to
others who may have to view this. It calculates fine but then seems
to be stuck in a loop on recalculating. Any Help? Code below.

Thanks,
Jay

Function CountCondition(CntRng As Range, Cond As Double) As Variant

Dim X As Integer
Dim i
X = 0
For Each i In CntRng
If i.Offset(0, -4).Value = Cond And Right(i.Value, 4) = "2008"
Then
X = X + 1
End If
CountCondition = X
Next i

End Function

  #3   Report Post  
Posted to microsoft.public.excel.misc
external usenet poster
 
Posts: 410
Default What is wrong with my UDF

On Oct 24, 8:35*am, Mike H wrote:
Works fine for me, what do you mean by re-calculating?



"jlclyde" wrote:
I am trying to count how many in a range meet a condition. *The twist
is that there is another column that the column needs to meet the
condition. *I wanted it as a Function so I could show my work to
others who may have to view this. *It calculates fine but then seems
to be stuck in a loop on recalculating. *Any Help? *Code below.


Thanks,
Jay


Function CountCondition(CntRng As Range, Cond As Double) As Variant


Dim X As Integer
Dim i
X = 0
For Each i In CntRng
* * If i.Offset(0, -4).Value = Cond And Right(i.Value, 4) = "2008"
Then
* * * * X = X + 1
* * End If
CountCondition = X
Next i


End Function- Hide quoted text -


- Show quoted text -


It shows Calculating in the lower left corner 0% and it never
increases and then I need to hit Ctrl + Break to get out of the loop.
  #4   Report Post  
Posted to microsoft.public.excel.misc
external usenet poster
 
Posts: 410
Default What is wrong with my UDF

On Oct 24, 8:35*am, Mike H wrote:
Works fine for me, what do you mean by re-calculating?



"jlclyde" wrote:
I am trying to count how many in a range meet a condition. *The twist
is that there is another column that the column needs to meet the
condition. *I wanted it as a Function so I could show my work to
others who may have to view this. *It calculates fine but then seems
to be stuck in a loop on recalculating. *Any Help? *Code below.


Thanks,
Jay


Function CountCondition(CntRng As Range, Cond As Double) As Variant


Dim X As Integer
Dim i
X = 0
For Each i In CntRng
* * If i.Offset(0, -4).Value = Cond And Right(i.Value, 4) = "2008"
Then
* * * * X = X + 1
* * End If
CountCondition = X
Next i


End Function- Hide quoted text -


- Show quoted text -


I ahve a soloution, but I am hoping that you can tell me why this is
tuck in a loop so I can avoid dong this again. The soloution is to
use Sumproduct and a helper column for the Right(i.value,4).

Thanks,
Jay
  #5   Report Post  
Posted to microsoft.public.excel.misc
external usenet poster
 
Posts: 11,501
Default What is wrong with my UDF

Hi,

I can see no reason at all why your UDF would go into and endless loop so
suspect that when the UDF calculates so do other formula on the sheet and
this is causing your problem.

Mike


"jlclyde" wrote:

On Oct 24, 8:35 am, Mike H wrote:
Works fine for me, what do you mean by re-calculating?



"jlclyde" wrote:
I am trying to count how many in a range meet a condition. The twist
is that there is another column that the column needs to meet the
condition. I wanted it as a Function so I could show my work to
others who may have to view this. It calculates fine but then seems
to be stuck in a loop on recalculating. Any Help? Code below.


Thanks,
Jay


Function CountCondition(CntRng As Range, Cond As Double) As Variant


Dim X As Integer
Dim i
X = 0
For Each i In CntRng
If i.Offset(0, -4).Value = Cond And Right(i.Value, 4) = "2008"
Then
X = X + 1
End If
CountCondition = X
Next i


End Function- Hide quoted text -


- Show quoted text -


I ahve a soloution, but I am hoping that you can tell me why this is
tuck in a loop so I can avoid dong this again. The soloution is to
use Sumproduct and a helper column for the Right(i.value,4).

Thanks,
Jay

Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Insert Calculated Field (wrong Qty*Price = wrong Amount) Edmund Excel Discussion (Misc queries) 8 October 4th 07 12:13 PM
not sure what is wrong Alex H Excel Worksheet Functions 7 January 16th 07 08:27 PM
What Am I Doing Wrong comparini3000 Excel Discussion (Misc queries) 1 June 12th 06 05:51 PM
wHAT AM i DOING wrong DMB Excel Worksheet Functions 3 December 27th 05 05:41 PM
What am I doing wrong? jewels Excel Worksheet Functions 8 December 8th 05 02:04 PM


All times are GMT +1. The time now is 01:39 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"