Thank you. Yes, I think adding .Value should solve the problem. Now VBA is referencing the value from that cell.
Adding .Value should allow it to take the value only and will not change as the value in the cell changes. Just like a paste special value. I will test it at the lab next Monday. 在 2015年11月6日星期五 UTC-5上午8:05:52,Paul Schreiner写道: > > The problem is: > You should use: > > Option Explicit > > at the beginning of each code module > (you can make it automatic by selecting > Tools->Options and Select "Require Variable Declaration") > > If you did that, you'd see that you are declaring Num_Sell as an integer. > > but then you're defining DIM_Sell as a RANGE! > > Dim_Buy = Range("Num_Buy") > Dim_sell = Range("Num_Sell") > > Now, in your code, I have no idea what it's thinking Num_sell is. > since you never "set" it, or change it's value. > the only thing I can think is that VBA is treating it as a Range Name and > returning the value of that range. > > So, I THINK that if you change: > > Dim_Buy = Range("Num_Buy") > Dim_sell = Range("Num_Sell") > to: > Num_Buy = Range("Num_Buy").Value > Num_sell = Range("Num_Sell").Value > > It should solve your problem. > > I'd still recommend using "Option Explicit". > > *Paul* > ----------------------------------------- > > > > > > > > *“Do all the good you can,By all the means you can,In all the ways you > can,In all the places you can,At all the times you can,To all the people > you can,As long as ever you can.” - John Wesley* > ----------------------------------------- > > ------------------------------ > *From:* Victor Wang <victor...@gmail.com <javascript:>> > *To:* MS EXCEL AND VBA MACROS <excel-...@googlegroups.com <javascript:>> > *Sent:* Thursday, November 5, 2015 10:19 PM > *Subject:* $$Excel-Macros$$ How to keep variables constant in a procedure > > > Below are some simple codes. > > At the beginning there are values in Cell "Num_Buy" and "Num_Sell". Let's > say 4 and 3 respectively. > > I want to do one thing for "Num_Buy" times and the other things for > "Num_Sell" times by using the two loops. > > The problem is that as the first loop runs, the "Num_Sell" as an input > for the second loop changes because the first loop will change the value in > the cell. > Let's say it is changed to 2. > > I don't want the "Num_Sell" to change for the second loop. I still want > to run for 3 times. > > How can I make this happen? > > Thanks, > > > > If timeremaining <= 299 And timeremaining >= 1 Then > > Dim Num_Buy As Integer > Dim Num_sell As Integer > > > Dim_Buy = Range("Num_Buy") > Dim_sell = Range("Num_Sell") > > If Num_Buy >= 1 Then > Dim b As Integer > > For b = 1 To Num_Buy > > OrderID = API.AddOrder(API.BUY, API.LMT) > > Next b > End If > > > If Num_sell >= 1 Then > Dim s As Integer > > For s = 1 To Num_sell > OrderID = API.AddOrder (API.SELL, API.LMT) > > Next s > End If > > End If > -- > Are you =EXP(E:RT) or =NOT(EXP(E:RT)) in Excel? And do you wanna be? It’s > =TIME(2,DO:IT,N:OW) ! Join official Facebook page of this forum @ > https://www.facebook.com/discussexcel > > FORUM RULES > > 1) Use concise, accurate thread titles. Poor thread titles, like Please > Help, Urgent, Need Help, Formula Problem, Code Problem, and Need Advice > will not get quick attention or may not be answered. > 2) Don't post a question in the thread of another member. > 3) Don't post questions regarding breaking or bypassing any security > measure. > 4) Acknowledge the responses you receive, good or bad. > 5) Jobs posting is not allowed. > 6) Sharing copyrighted material and their links is not allowed. > > NOTE : Don't ever post confidential data in a workbook. Forum owners and > members are not responsible for any loss. > --- > You received this message because you are subscribed to the Google Groups > "MS EXCEL AND VBA MACROS" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to excel-macros...@googlegroups.com <javascript:>. > To post to this group, send email to excel-...@googlegroups.com > <javascript:>. > Visit this group at http://groups.google.com/group/excel-macros. > For more options, visit https://groups.google.com/d/optout. > > > -- Are you =EXP(E:RT) or =NOT(EXP(E:RT)) in Excel? And do you wanna be? It’s =TIME(2,DO:IT,N:OW) ! Join official Facebook page of this forum @ https://www.facebook.com/discussexcel FORUM RULES 1) Use concise, accurate thread titles. Poor thread titles, like Please Help, Urgent, Need Help, Formula Problem, Code Problem, and Need Advice will not get quick attention or may not be answered. 2) Don't post a question in the thread of another member. 3) Don't post questions regarding breaking or bypassing any security measure. 4) Acknowledge the responses you receive, good or bad. 5) Jobs posting is not allowed. 6) Sharing copyrighted material and their links is not allowed. NOTE : Don't ever post confidential data in a workbook. Forum owners and members are not responsible for any loss. --- You received this message because you are subscribed to the Google Groups "MS EXCEL AND VBA MACROS" group. To unsubscribe from this group and stop receiving emails from it, send an email to excel-macros+unsubscr...@googlegroups.com. To post to this group, send email to excel-macros@googlegroups.com. Visit this group at http://groups.google.com/group/excel-macros. For more options, visit https://groups.google.com/d/optout.