What is wrong with this vba piece of code?

J

Jo

Hi,

I am getting this error: "Object variable or With block variable is
not set!" Here is the mcro's code:

Sub Solve()

Dim SCell As Range

Do Until SCell.Value = 1
If SCell.Value <> 1 Then
Range("J24").Select
Calculate
End If
Loop
End Sub

Thanks,
Jo
 
K

Kevin B

You've declared a range variable but did not assign it a range

Use something like this, substituting the correct range where I have
"Cell_Address_Here_As_String":

Set SCell = Range("Cell_Address_Here_As_String")
 
J

Jo

It might help if you tell us what you are trying to do?

--
Don Guillett
Microsoft MVP Excel
SalesAid Software










- Show quoted text -

Say I have two cells A1 and A2. In A1, I have a random number built
into a formula. In A2, I have a formula like this "if(A1>5,1,0)".

Now, I am creating a Macro that will keep A1 running till its value is
5 where it stops.

So, how can I make the above code runs?

Thanks,
Jo
 
R

Rick Rothstein \(MVP - VB\)

Kevin has responded to your original question... I just wanted to make a
brief comment about your code. You do not need the If-Then test inside your
loop. The

Do Until SCell.Value = 1

statement won't let the loop execute if SCell.Value equals 1, so there is no
need to see if it equals 1 inside the loop itself. If you think it might be
clearer to you, you can change the Do loop statement to this instead...

Do While SCell.Value <> 1

which looks like the If-Then test you were performing originally (you still
would not need the If-Then test within your loop).

Rick
 

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

Similar Threads


Top