If then help.

J

JHB

I have created the following macro, which appears fine to me but does
not run:

Sub setlowest()
'
' setlowest Macro
' Macro recorded 10/3/2008 by John
'
Sheets("Menu").Select


If Range("D33").Value > Range("d42").ValueThen Then GoTo getout
Else
Range("D33").Select
Selection.Copy
Range("D42").Select
ActiveSheet.Paste
Range("C33").Select
Application.CutCopyMode = False
Selection.Copy
Range("E42").Select
ActiveSheet.Paste
End If
getout:
End Sub


I am told that there is an "else, but no If". I can see the if, and
have no idea what the issue is. Could someone tell me the
simple..stupid mistake that I am making, please?

Thanks in advance
 
T

Thomas [PBD]

JHB,

Amended, you had an extra THEN and the GOTO needed to be on a separate line:

Sub setlowest()
'
' setlowest Macro
' Macro recorded 10/3/2008 by John
'
Sheets("Menu").Select


If Range("D33").Value > Range("d42").Value Then
GoTo getout
Else
Range("D33").Select
Selection.Copy
Range("D42").Select
ActiveSheet.Paste
Range("C33").Select
Application.CutCopyMode = False
Selection.Copy
Range("E42").Select
ActiveSheet.Paste
End If
getout:
End Sub
 
J

JHB

JHB,

Amended, you had an extra THEN and the GOTO needed to be on a separate line:

Sub setlowest()
'
' setlowest Macro
' Macro recorded 10/3/2008 by John
'
Sheets("Menu").Select

If Range("D33").Value > Range("d42").Value Then
GoTo getout
Else
    Range("D33").Select
    Selection.Copy
    Range("D42").Select
    ActiveSheet.Paste
    Range("C33").Select
    Application.CutCopyMode = False
    Selection.Copy
    Range("E42").Select
    ActiveSheet.Paste
End If
getout:
End Sub

--
--Thomas [PBD]
Working hard to make working easy.
Answered your question? Click ''Yes'' below.

JHB said:
I have created the following macro, which appears fine to me but does
not run:
Sub setlowest()
'
' setlowest Macro
' Macro recorded 10/3/2008 by John
'
Sheets("Menu").Select
If Range("D33").Value > Range("d42").ValueThen Then GoTo getout
Else
    Range("D33").Select
    Selection.Copy
    Range("D42").Select
    ActiveSheet.Paste
    Range("C33").Select
    Application.CutCopyMode = False
    Selection.Copy
    Range("E42").Select
    ActiveSheet.Paste
End If
getout:
End Sub
I am told that there is an "else, but no If". I can see the if, and
have no idea what the issue is. Could someone tell me the
simple..stupid mistake that I am making, please?
Thanks in advance

Thank you very much. I knew it was some stupid thing that I had missed
-- I wont make that mistake again!
 
T

T. Valko

You can reduce that further to:

Sub setlowest()

Sheets("Menu").Activate
If Range("D33").Value > Range("d42").Value Then Exit Sub
Range("D42") = Range("D33").Value
Range("E42") = Range("C33").Value
End Sub

--
Biff
Microsoft Excel MVP


JHB,

Amended, you had an extra THEN and the GOTO needed to be on a separate
line:

Sub setlowest()
'
' setlowest Macro
' Macro recorded 10/3/2008 by John
'
Sheets("Menu").Select

If Range("D33").Value > Range("d42").Value Then
GoTo getout
Else
Range("D33").Select
Selection.Copy
Range("D42").Select
ActiveSheet.Paste
Range("C33").Select
Application.CutCopyMode = False
Selection.Copy
Range("E42").Select
ActiveSheet.Paste
End If
getout:
End Sub

--
--Thomas [PBD]
Working hard to make working easy.
Answered your question? Click ''Yes'' below.

JHB said:
I have created the following macro, which appears fine to me but does
not run:
Sub setlowest()
'
' setlowest Macro
' Macro recorded 10/3/2008 by John
'
Sheets("Menu").Select
If Range("D33").Value > Range("d42").ValueThen Then GoTo getout
Else
Range("D33").Select
Selection.Copy
Range("D42").Select
ActiveSheet.Paste
Range("C33").Select
Application.CutCopyMode = False
Selection.Copy
Range("E42").Select
ActiveSheet.Paste
End If
getout:
End Sub
I am told that there is an "else, but no If". I can see the if, and
have no idea what the issue is. Could someone tell me the
simple..stupid mistake that I am making, please?
Thanks in advance

Thank you very much. I knew it was some stupid thing that I had missed
-- I wont make that mistake again!
 

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

Top