Check difference

A

Arne Hegefors

I have a sub that is called from a loop. It is supposed to check if the
difference between two numbers is greater than a predefined errror
tolarnance. However the difference between the two numbers shall only be
checked if neither of them are zero.

My problem is that no differences are deterected. My code is:

Dim dblLocalReturnDiff As Double
If rng4.Offset(l, 0) <> 0 And rng3.Offset(l, 0) <> 0 And rng4.Offset(l,
0) <> rng3.Offset(l, 0) Then
dblLocalReturnDiff = rng4.Offset(l, 0) - rng3.Offset(l, 0)
If Abs(dblLocalReutrnDiff) > dblErrorMarginal Then
MsgBox ("Local return skiljer sig åt mellan portföljen och
benchmark!" & vbCrLf & "Kolla upp vad detta kan bero på.")
Err.Raise 600
End If
End If

I supsect that the problem is to be found in the first IF statement. What I
want to say is that is neither one of the two values is zero and the two
values are not equal to one another then I want to continue the check. I do
not know how to write that so that it works. Please help me. Thanks very much!
 
T

Tom Ogilvy

if you change
If Abs(dblLocalReutrnDiff) > dblErrorMarginal Then

to

If Abs(dblLocalReturnDiff) > dblErrorMarginal Then

so dblLocalReturnDiff is spelled correctly, it seems to work.
 
B

bert

Tom said:
if you change
If Abs(dblLocalReutrnDiff) > dblErrorMarginal Then

to

If Abs(dblLocalReturnDiff) > dblErrorMarginal Then

so dblLocalReturnDiff is spelled correctly, it seems to work.

This looks to me like a strong case for "Option Explicit".
--
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top