View Single Post
  #4   Report Post  
Posted to microsoft.public.excel.programming
KevinM[_2_] KevinM[_2_] is offline
external usenet poster
 
Posts: 9
Default How do I assign variables

Thanks for the reply. The code seems to be working as its placing the values
in the row and columns I want. What I'm trying to do is search for a paycode
value of 1 in row J(my For and Next J) colunm 6 and once it finds that value
take the same row and multiply the value in column K with the value in
column G and put the result in column 12 of the same row.

Does that make sense? Is there a better way to do it? I'm just trying to put
a value not a formula. I think you're getting syntax errors because I only
gave you a snippet of the code. I also placed variables in front of my
formulas but its not working.

Again, I appreciate your help. I'm trying to find out if there's a better
way to do this as this is my first attempt at writing VBA.

Heres the entire code:

Sub calculate_retropay()

Dim paycode12 As Integer

Dim paycode13 As Integer

Dim paycode1E As Integer

Dim paycode1H As Integer

Dim paycode1I As Integer

Dim paycode1J As Integer

Dim paycode1 As Integer




'this will search for the pay period in column C

Enterpp = InputBox("Please enter the period number ie 2008-21-0")

finalrow = Cells(65536, 3).End(xlUp).Row

finalrow1 = Cells(65536, 6).End(xlUp).Row

'finalrow = Cells(65536, 10).End(xlUp).Row

For i = 1 To finalrow

For j = 1 To finalrow1




'takes the value of what pay period is keyed in

If Cells(i, 3).Value = Enterpp Then

'if paycode =1 then take the new rate * by hours

If Cells(j, 6).Value = 1 Then

Cells(j, 12).Formula = Cells(j, 7) * Cells(j, 11)





'Else

'If Cells(j, 6).Value = 5 Then

'Cells(j, 12).Value = "test"

Else

'if paycode =12 then take the new rate * by hours

If Cells(j, 6).Value = 12 Then

Cells(j, 12).Formula = Cells(j, 7) * Cells(j, 11)

Else

'if paycode =13 then take the new rate * by hours

If Cells(j, 6).Value = 13 Then

Cells(j, 12).Formula = Cells(j, 7) * Cells(j, 11)

Else

'if paycode =1E then take the new rate * by hours

If Cells(j, 6).Value = "1E" Then

paycode1E = Cells(j, 12).Formula = Cells(j, 7) * Cells(j, 11)

Else

'if paycode =1H then take the new rate * by hours

If Cells(j, 6).Value = "1H" Then

paycode1H = Cells(j, 12).Formula = Cells(j, 7) * Cells(j, 11)

Else

'if paycode =1I then take the new rate * by hours

If Cells(j, 6).Value = "1I" Then

paycode1I = Cells(j, 12).Formula = Cells(j, 7) * Cells(j, 11)

Else

If Cells(j, 6).Value = "1J" Then

paycode1J = Cells(j, 12).Formula = Cells(j, 7) * Cells(j, 11)

Else

'if paycode =1M then take the new rate * by hours

If Cells(j, 6).Value = "1M" Then

paycode1M = Cells(j, 12).Formula = Cells(j, 7) * Cells(j, 11)

Else

'if paycode =1V then take the new rate * by hours

If Cells(j, 6).Value = "1V" Then

paycode1V = Cells(j, 12).Formula = Cells(j, 7) * Cells(j, 11)

Else

'if paycode =1N then take the new rate * by hours

If Cells(j, 6).Value = "1N" Then

paycode1N = Cells(j, 12).Formula = Cells(j, 7) * Cells(j, 11)

End If


'grabbing the earnings

If Cells(j, 6).Value = "7B" Then

earnings7b = Cells(j, 10).Select

Else

If Cells(j, 6).Value = "7C" Then

earnings7C = Cells(j, 10).Select

Else

If Cells(j, 6).Value = "7D" Then

earnings7D = Cells(j, 10).Select

Else

If Cells(j, 6).Value = "7E" Then

earnings7E = Cells(j, 10).Select

Else

If Cells(j, 6).Value = "7M" Then

earnings7M = Cells(j, 10).Select

Else

If Cells(j, 6).Value = "7Q" Then

earnings7Q = Cells(j, 10).Select

Else

If Cells(j, 6).Value = "7S" Then

earnings7S = Cells(j, 10).Select

Else

If Cells(j, 6).Value = "7Z" Then

earnings7Z = Cells(j, 10).Select

Else

If Cells(j, 6).Value = 99 Then

earnings99 = Cells(j, 10).Select

Else

If Cells(j, 6).Value = "9A" Then

earnings9A = Cells(j, 10).Select

Else

If Cells(j, 6).Value = "9B" Then

earnings9B = Cells(j, 10).Select

Else

If Cells(j, 6).Value = "9C" Then

earnings9C = Cells(j, 10).Select

Else

If Cells(j, 6).Value = "9D" Then

earnings9D = Cells(j, 10).Select

Else

If Cells(j, 6).Value = "9F" Then

earnings9F = Cells(j, 10).Select

Else

If Cells(j, 6).Value = "9G" Then

Cells(j, 10).Select

earnings9G = ActiveCell.Value


Else

If Cells(j, 6).Value = "9H" Then

earnings9H = Cells(j, 10).Select

Else

If Cells(j, 6).Value = "9L" Then

earnings9L = Cells(j, 10).Select

Else

If Cells(j, 6).Value = "9O" Then

earnings9O = Cells(j, 10).Select

Else

If Cells(j, 6).Value = "9P" Then

earnings9P = Cells(j, 10).Select

Else

If Cells(j, 6).Value = "9S" Then

earnings9S = Cells(j, 10).Select

Else

If Cells(j, 6).Value = "9T" Then

earnings9T = Cells(j, 10).Select

Else

If Cells(j, 6).Value = "9U" Then

earnings9U = Cells(j, 10).Select

End If

'defining hours

If Cells(j, 6).Value = 1 Then

hours1 = Cells(j, 7).Select

Else

If Cells(j, 6).Value = 12 Then

hours12 = Cells(j, 7).Select

Else

If Cells(j, 6).Value = 13 Then

hours13 = Cells(j, 7).Select

Else

If Cells(j, 6).Value = "1E" Then

hours1E = Cells(j, 7).Select

Else

If Cells(j, 6).Value = "1H" Then

hours1H = Cells(j, 7).Select

Else

If Cells(j, 6).Value = "1L" Then

hours1L = Cells(j, 7).Select

Else

If Cells(j, 6).Value = "1J" Then

hours1J = Cells(j, 7).Select

Else

If Cells(j, 6).Value = "1M" Then

hours1M = Cells(j, 7).Select

Else

If Cells(j, 6).Value = "1V" Then

hours1V = Cells(j, 7).Select

Else

If Cells(j, 6).Value = "1N" Then

Cells(j, 7).Select

End If


If Cells(j, 6).Value = 5 Then

Cells(j, 12).Value = "this is a test"


Columns("M:M").NumberFormat = "0.0000"













End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If

End If









Next j

Next i



End Sub

"FSt1" wrote in message
...
hi
what are we trying to do with this line....
paycode1 = Cells(j, 12).Formula = Cells(j, 7) * Cells(j, 11)

it seems you are trying to put value in paycode1 AND put a formula for
that
value in cells(j, 12). cant do that
are you trying to put a formula in the cell above or just a value?
paycode1 = cells(j, 7).value * Cells(j, 11).value
cells(j, 12).value = paycode1.value
or for formula
cells(j, 12).FormulaR1C1 = "=RC[-5]+RC[-1]"

post back with more detail as to what you are trying to do with this line
because it has syntax error all over it.

Regards
FSt1



"KevinM" wrote:

Hi. I'm new to VBA and wrote this code to calculate pay. It's working
but
what I also need is to have calculations done by taking the data and
adding
them and then dividing them. I wanted to assign varibles to the IF
statements to allow me make the addition and division easier but its not
working. How do I assign variables to allow me to add and divide? Here
is
the code. Thank you in advance.

Sub calculate_retropay()

Dim paycode12 As Integer
Dim paycode13 As Integer
Dim paycode1E As Integer
Dim paycode1H As Integer
Dim paycode1I As Integer
Dim paycode1J As Integer
Dim paycode1 As Integer

'this will search for the pay period in column C
Enterpp = InputBox("Please enter the period number ie 2008-21-0")
finalrow = Cells(65536, 3).End(xlUp).Row
finalrow1 = Cells(65536, 6).End(xlUp).Row

For i = 1 To finalrow
For j = 1 To finalrow1


'takes the value of what pay period is keyed in
If Cells(i, 3).Value = Enterpp Then
'if paycode =1 then take the new rate * by hours
If Cells(j, 6).Value = 1 Then
paycode1=Cells(j, 12).Formula = Cells(j, 7) * Cells(j, 11)
***when I assign this as a variable it doesn't work
Else
If Cells(j, 6).Value = 5 Then
Cells(j, 12).Value = "test" ** if its set like
this
when it works fine
Else
if paycode =12 then take the new rate * by hours
If Cells(j, 6).Value = 12 Then
Cells(j, 12).Formula = Cells(j, 7) * Cells(j, 11)