ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   loop random number (https://www.excelbanter.com/excel-programming/302032-loop-random-number.html)

mrmark

loop random number
 
I need to write a macro for Excel that will keep on generating a rando
number until a condition is met. The values compared are on th
spreadsheet and I dont know how to call them in VB.
Any help is greatly at all is welcome

--
Message posted from http://www.ExcelForum.com


Tom Ogilvy

loop random number
 

Sub AABB()
Range("B1") = Int(Rnd() * 1000 + 1)
If IsNumeric(Range("C1")) Then
If Range("C1") < 1000 And Range("C1") 1 Then
Do While Range("B1") Range("C1")
Range("B1") = Int(Rnd() * 1000 + 1)
Loop
End If
End If
End Sub


as an example.

--
Regards,
Tom Ogilvy





"mrmark " wrote in message
...
I need to write a macro for Excel that will keep on generating a random
number until a condition is met. The values compared are on the
spreadsheet and I dont know how to call them in VB.
Any help is greatly at all is welcome.


---
Message posted from http://www.ExcelForum.com/




mrmark[_2_]

loop random number
 
Well its like this there is this equation I have in a spreadsheet I hav
in one cell B15 the right side of the equation and in B16 I have th
left side of the equation and I want excel to keep generating value
until both sides are equal, would a random number actually be able t
help with this

--
Message posted from http://www.ExcelForum.com


mrmark[_3_]

loop random number
 
Ok I have written some of my own code and I dont know if it works or no
because I get the "That name is not valid" box when I call the macro.
but heres the code
Sub numberct()
'
' numberct Macro
' Macro recorded 6/22/2004 by y98
'

'
If Range("B15") < Range("B16") Then
Range("B17") = Int(Rnd() * 0.009)
ElseIf Range("B15") = Range("B16") Then
Range("B17") = ""
End If

End Su

--
Message posted from http://www.ExcelForum.com


Tom Ogilvy

loop random number
 
Code runs fine for me. If B17 is involved in the calculation of the
formulas, then it seems setting it to "" would change the values being
returned by B15 and B16.

If you are just using rnd to stimulate a calculation (and it (B17) isn't
referenced by the formula), you can just use ActiveSheet.CalculateFull in
Excel 2000 and later

If the calculations are returning floating point numbers, it is probable
that they will never return equal numbers.

--
Regards,
Tom Ogilvy

"mrmark " wrote in message
...
Ok I have written some of my own code and I dont know if it works or not
because I get the "That name is not valid" box when I call the macro.
but heres the code
Sub numberct()
'
' numberct Macro
' Macro recorded 6/22/2004 by y98
'

'
If Range("B15") < Range("B16") Then
Range("B17") = Int(Rnd() * 0.009)
ElseIf Range("B15") = Range("B16") Then
Range("B17") = ""
End If

End Sub


---
Message posted from http://www.ExcelForum.com/





All times are GMT +1. The time now is 05:12 PM.

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