Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 21
Default Numeric Userform Help

Ok, here's the deal. I have 2 macro's currently. the first to call the
user form where the user will input a minimum ammount, maximum ammount,
and the increment in which they want to use. I have the code for the
calculations done, I just need help passing the variables from the
userform to the second macro as numeric values. All of my code is
posted below. Any help would be appreciated.

Thanks in advance.
Andrew

MACRO 1
Public Sub tax()


Dim increment As String
Dim min As Double
Dim max As Double

UserForm1.Show


End Sub


USERFORM

Public Sub IncBox_Change()

increment = IncBox
increment.Value = Val(txtNumber.Text)
End Sub

Public Sub MaxBox_Change()

max = MaxBox
increment.Value = Val(txtNumber.Text)
End Sub

Public Sub MinBox_Change()

min = MinBox
increment.Value = Val(txtNumber.Text)
End Sub

Private Sub OKButton_Click()
UserForm1.Hide
Application.Run ("Calculations")
End Sub

Private Sub UserForm_Click()

End Sub


MACRO 2
Sub Calculations()
'
'

'
Dim rowcounter As Integer

rowcounter = 40

income = min

Do While income <= max

Range("b" & rowcounter).Select
ActiveCell.FormulaR1C1 = income
Selection.Copy
Range("B1").Select
ActiveSheet.Paste
Range("G16").Select
Application.CutCopyMode = False
Selection.Copy
Range("D" & rowcounter).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone,
SkipBlanks:= _
False, Transpose:=False
Range("G25").Select
Application.CutCopyMode = False
Selection.Copy
Range("C" & rowcounter).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone,
SkipBlanks:= _
False, Transpose:=False
Range("E" & rowcounter).Select
ActiveCell.FormulaR1C1 = "=RC[-3]-RC[-2]"
Range("F" & rowcounter).Select
ActiveCell.FormulaR1C1 = "=RC[-4]-RC[-2]"

income = income + increment
rowcounter = rowcounter + 1
Loop

End Sub

  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 10,593
Default Numeric Userform Help

Change the call to

Application.Run "Calculations", txtMin.Text, txtMax.Text, txtNumber.Text

and the procedure declaration to

Sub Calculations(min, max, increment)

I didn't understand how you were managing the controls in the userform, so I
have probably got the names wrong.

--
HTH

Bob Phillips

(replace somewhere in email address with gmail if mailing direct)

wrote in message
oups.com...
Ok, here's the deal. I have 2 macro's currently. the first to call the
user form where the user will input a minimum ammount, maximum ammount,
and the increment in which they want to use. I have the code for the
calculations done, I just need help passing the variables from the
userform to the second macro as numeric values. All of my code is
posted below. Any help would be appreciated.

Thanks in advance.
Andrew

MACRO 1
Public Sub tax()


Dim increment As String
Dim min As Double
Dim max As Double

UserForm1.Show


End Sub


USERFORM

Public Sub IncBox_Change()

increment = IncBox
increment.Value = Val(txtNumber.Text)
End Sub

Public Sub MaxBox_Change()

max = MaxBox
increment.Value = Val(txtNumber.Text)
End Sub

Public Sub MinBox_Change()

min = MinBox
increment.Value = Val(txtNumber.Text)
End Sub

Private Sub OKButton_Click()
UserForm1.Hide
Application.Run ("Calculations")
End Sub

Private Sub UserForm_Click()

End Sub


MACRO 2
Sub Calculations()
'
'

'
Dim rowcounter As Integer

rowcounter = 40

income = min

Do While income <= max

Range("b" & rowcounter).Select
ActiveCell.FormulaR1C1 = income
Selection.Copy
Range("B1").Select
ActiveSheet.Paste
Range("G16").Select
Application.CutCopyMode = False
Selection.Copy
Range("D" & rowcounter).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone,
SkipBlanks:= _
False, Transpose:=False
Range("G25").Select
Application.CutCopyMode = False
Selection.Copy
Range("C" & rowcounter).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone,
SkipBlanks:= _
False, Transpose:=False
Range("E" & rowcounter).Select
ActiveCell.FormulaR1C1 = "=RC[-3]-RC[-2]"
Range("F" & rowcounter).Select
ActiveCell.FormulaR1C1 = "=RC[-4]-RC[-2]"

income = income + increment
rowcounter = rowcounter + 1
Loop

End Sub



  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 21
Default Numeric Userform Help

Thanks for the quick reply Bob.

Well I'm not sure how to properly do the userform in the first place so
if you have a simpler way to do it please let me know because i'm
completly clueless. Basicly MACRO2 works and I need a userform on the
front end so i can type numbers into that to change the min, max, and
increment of the calculation via the userform instead of messing around
in VBA all the time. If you can come up with a solution for that I
would be forever greatful.

Andrew

Bob Phillips wrote:
Change the call to

Application.Run "Calculations", txtMin.Text, txtMax.Text, txtNumber.Text

and the procedure declaration to

Sub Calculations(min, max, increment)

I didn't understand how you were managing the controls in the userform, so I
have probably got the names wrong.

--
HTH

Bob Phillips

(replace somewhere in email address with gmail if mailing direct)

wrote in message
oups.com...
Ok, here's the deal. I have 2 macro's currently. the first to call the
user form where the user will input a minimum ammount, maximum ammount,
and the increment in which they want to use. I have the code for the
calculations done, I just need help passing the variables from the
userform to the second macro as numeric values. All of my code is
posted below. Any help would be appreciated.

Thanks in advance.
Andrew

MACRO 1
Public Sub tax()


Dim increment As String
Dim min As Double
Dim max As Double

UserForm1.Show


End Sub


USERFORM

Public Sub IncBox_Change()

increment = IncBox
increment.Value = Val(txtNumber.Text)
End Sub

Public Sub MaxBox_Change()

max = MaxBox
increment.Value = Val(txtNumber.Text)
End Sub

Public Sub MinBox_Change()

min = MinBox
increment.Value = Val(txtNumber.Text)
End Sub

Private Sub OKButton_Click()
UserForm1.Hide
Application.Run ("Calculations")
End Sub

Private Sub UserForm_Click()

End Sub


MACRO 2
Sub Calculations()
'
'

'
Dim rowcounter As Integer

rowcounter = 40

income = min

Do While income <= max

Range("b" & rowcounter).Select
ActiveCell.FormulaR1C1 = income
Selection.Copy
Range("B1").Select
ActiveSheet.Paste
Range("G16").Select
Application.CutCopyMode = False
Selection.Copy
Range("D" & rowcounter).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone,
SkipBlanks:= _
False, Transpose:=False
Range("G25").Select
Application.CutCopyMode = False
Selection.Copy
Range("C" & rowcounter).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone,
SkipBlanks:= _
False, Transpose:=False
Range("E" & rowcounter).Select
ActiveCell.FormulaR1C1 = "=RC[-3]-RC[-2]"
Range("F" & rowcounter).Select
ActiveCell.FormulaR1C1 = "=RC[-4]-RC[-2]"

income = income + increment
rowcounter = rowcounter + 1
Loop

End Sub


  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 10,593
Default Numeric Userform Help

What you are doing seems okay, but you don't actually need Application.Run,
just

Call Calculations( txtMin.Text, txtMax.Text, txtNumber.Text)

You could just use inputboxes, like so

Dim min, max, increment

On Error Resume Next

Do
min = InputBox("Please supply minimum value")
If min = "" Then Exit Sub
Loop Until IsNumeric(min) Or min = 0

Do
max = InputBox("Please supply maximum value")
If max = "" Then Exit Sub
Loop Until IsNumeric(max) Or max = 0

Do
increment = InputBox("Please supply increment")
If increment = "" Then Exit Sub
Loop Until IsNumeric(increment) Or increment = 0


just add this at the start of Calculations.

--
HTH

Bob Phillips

(replace somewhere in email address with gmail if mailing direct)

wrote in message
oups.com...
Thanks for the quick reply Bob.

Well I'm not sure how to properly do the userform in the first place so
if you have a simpler way to do it please let me know because i'm
completly clueless. Basicly MACRO2 works and I need a userform on the
front end so i can type numbers into that to change the min, max, and
increment of the calculation via the userform instead of messing around
in VBA all the time. If you can come up with a solution for that I
would be forever greatful.

Andrew

Bob Phillips wrote:
Change the call to

Application.Run "Calculations", txtMin.Text, txtMax.Text, txtNumber.Text

and the procedure declaration to

Sub Calculations(min, max, increment)

I didn't understand how you were managing the controls in the userform,

so I
have probably got the names wrong.

--
HTH

Bob Phillips

(replace somewhere in email address with gmail if mailing direct)

wrote in message
oups.com...
Ok, here's the deal. I have 2 macro's currently. the first to call the
user form where the user will input a minimum ammount, maximum

ammount,
and the increment in which they want to use. I have the code for the
calculations done, I just need help passing the variables from the
userform to the second macro as numeric values. All of my code is
posted below. Any help would be appreciated.

Thanks in advance.
Andrew

MACRO 1
Public Sub tax()


Dim increment As String
Dim min As Double
Dim max As Double

UserForm1.Show


End Sub


USERFORM

Public Sub IncBox_Change()

increment = IncBox
increment.Value = Val(txtNumber.Text)
End Sub

Public Sub MaxBox_Change()

max = MaxBox
increment.Value = Val(txtNumber.Text)
End Sub

Public Sub MinBox_Change()

min = MinBox
increment.Value = Val(txtNumber.Text)
End Sub

Private Sub OKButton_Click()
UserForm1.Hide
Application.Run ("Calculations")
End Sub

Private Sub UserForm_Click()

End Sub


MACRO 2
Sub Calculations()
'
'

'
Dim rowcounter As Integer

rowcounter = 40

income = min

Do While income <= max

Range("b" & rowcounter).Select
ActiveCell.FormulaR1C1 = income
Selection.Copy
Range("B1").Select
ActiveSheet.Paste
Range("G16").Select
Application.CutCopyMode = False
Selection.Copy
Range("D" & rowcounter).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone,
SkipBlanks:= _
False, Transpose:=False
Range("G25").Select
Application.CutCopyMode = False
Selection.Copy
Range("C" & rowcounter).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone,
SkipBlanks:= _
False, Transpose:=False
Range("E" & rowcounter).Select
ActiveCell.FormulaR1C1 = "=RC[-3]-RC[-2]"
Range("F" & rowcounter).Select
ActiveCell.FormulaR1C1 = "=RC[-4]-RC[-2]"

income = income + increment
rowcounter = rowcounter + 1
Loop

End Sub




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
Match Single Numeric Criteria and Return Multiple Numeric Labels Sam via OfficeKB.com Excel Worksheet Functions 3 December 30th 05 08:01 PM
Match Single Numeric Criteria and Return Multiple Numeric Labels Sam via OfficeKB.com Excel Worksheet Functions 0 December 29th 05 08:44 PM
check is input textboxes is numeric on userform Jean-Pierre D via OfficeKB.com Excel Programming 7 August 16th 05 08:15 PM
Ensuring UserForm Textbox Entry is numeric [email protected] Excel Programming 3 October 8th 04 11:20 PM
Use numeric data from a textbox on an userform Excel[_3_] Excel Programming 0 July 23rd 03 04:45 PM


All times are GMT +1. The time now is 06:58 PM.

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

About Us

"It's about Microsoft Excel"