Problem with If,Then, Else
Hi Everyone
Below is a sample of my codes for a Staircase Calculator. My problem is at the If command at the bottom, I tried different things but no success, I need your help. Regards John Sub Make_Stairs4() Dim nx As Variant nx = 4 Application.ScreenUpdating = False ActiveWindow.Zoom = 100 Height_size = Range("G1").Value Width_size = Range("G2").Value Left_size = Range("K1").Value Top_size = Range("K2").Value ActiveSheet.Shapes.AddShape(msoShapeRightTriangle, _ Left_size, Top_size, Width_size, Height_size).Select 'Selection.Characters.Text = "4" Selection.ShapeRange.Fill.ForeColor.RGB = RGB(255, 255, 255) Selection.ShapeRange.Fill.Transparency = 0.65 Selection.ShapeRange.Line.Weight = 0.75 Selection.ShapeRange.Line.ForeColor.RGB = RGB(10, 10, 10) Selection.ShapeRange.Line.BackColor.RGB = RGB(255, 255, 255) ActiveSheet.Range("D2").Select If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" , Exit Sub Else: Selection.Characters.Text = "4" End If Call Make_Stairs5 End Sub |
Problem with If,Then, Else
If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" , Exit
Sub Else: Selection.Characters.Text = "4" End If Forget trying to combine things on the same line and use normal blocking... If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" Exit Sub Else Selection.Characters.Text = "4" End If As for your error, you can't mix putting commands after the Then keyword with Else conditionals. If you have this... If <logical expression Then <do something then you cannot follow it with an ElseIf nor and Else; however, if you put the <do something code on a separate line from the Then keyword, you can. -- Rick (MVP - Excel) "John" wrote in message ... Hi Everyone Below is a sample of my codes for a Staircase Calculator. My problem is at the If command at the bottom, I tried different things but no success, I need your help. Regards John Sub Make_Stairs4() Dim nx As Variant nx = 4 Application.ScreenUpdating = False ActiveWindow.Zoom = 100 Height_size = Range("G1").Value Width_size = Range("G2").Value Left_size = Range("K1").Value Top_size = Range("K2").Value ActiveSheet.Shapes.AddShape(msoShapeRightTriangle, _ Left_size, Top_size, Width_size, Height_size).Select 'Selection.Characters.Text = "4" Selection.ShapeRange.Fill.ForeColor.RGB = RGB(255, 255, 255) Selection.ShapeRange.Fill.Transparency = 0.65 Selection.ShapeRange.Line.Weight = 0.75 Selection.ShapeRange.Line.ForeColor.RGB = RGB(10, 10, 10) Selection.ShapeRange.Line.BackColor.RGB = RGB(255, 255, 255) ActiveSheet.Range("D2").Select If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" , Exit Sub Else: Selection.Characters.Text = "4" End If Call Make_Stairs5 End Sub |
Problem with If,Then, Else
Hi Rick
Thank you for your reply. When I execute the codes, it stops at this line Selection.Characters.Text = "Foor" Runtime error 1004 Unable to set the text property of the character class. Best regards John "Rick Rothstein" wrote in message ... If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" , Exit Sub Else: Selection.Characters.Text = "4" End If Forget trying to combine things on the same line and use normal blocking... If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" Exit Sub Else Selection.Characters.Text = "4" End If As for your error, you can't mix putting commands after the Then keyword with Else conditionals. If you have this... If <logical expression Then <do something then you cannot follow it with an ElseIf nor and Else; however, if you put the <do something code on a separate line from the Then keyword, you can. -- Rick (MVP - Excel) "John" wrote in message ... Hi Everyone Below is a sample of my codes for a Staircase Calculator. My problem is at the If command at the bottom, I tried different things but no success, I need your help. Regards John Sub Make_Stairs4() Dim nx As Variant nx = 4 Application.ScreenUpdating = False ActiveWindow.Zoom = 100 Height_size = Range("G1").Value Width_size = Range("G2").Value Left_size = Range("K1").Value Top_size = Range("K2").Value ActiveSheet.Shapes.AddShape(msoShapeRightTriangle, _ Left_size, Top_size, Width_size, Height_size).Select 'Selection.Characters.Text = "4" Selection.ShapeRange.Fill.ForeColor.RGB = RGB(255, 255, 255) Selection.ShapeRange.Fill.Transparency = 0.65 Selection.ShapeRange.Line.Weight = 0.75 Selection.ShapeRange.Line.ForeColor.RGB = RGB(10, 10, 10) Selection.ShapeRange.Line.BackColor.RGB = RGB(255, 255, 255) ActiveSheet.Range("D2").Select If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" , Exit Sub Else: Selection.Characters.Text = "4" End If Call Make_Stairs5 End Sub |
Problem with If,Then, Else
Actually, I didn't look at what the code is supposed to be doing; rather, I
just spotted the structural error and posted the correction for it. As to your current question, what is this line... Selection.Characters.Text = "Foor" supposed to be doing? Are you just trying to assign "Foor" to the selected cell or cells? If so, just do this... Selection.Value = "Foor" If you are attempting to do something else, you will have to give a more detailed description. And, in addition to such a description, I would want to know if the selected cell or cells contain formulas or text constants. -- Rick (MVP - Excel) "John" wrote in message ... Hi Rick Thank you for your reply. When I execute the codes, it stops at this line Selection.Characters.Text = "Foor" Runtime error 1004 Unable to set the text property of the character class. Best regards John "Rick Rothstein" wrote in message ... If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" , Exit Sub Else: Selection.Characters.Text = "4" End If Forget trying to combine things on the same line and use normal blocking... If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" Exit Sub Else Selection.Characters.Text = "4" End If As for your error, you can't mix putting commands after the Then keyword with Else conditionals. If you have this... If <logical expression Then <do something then you cannot follow it with an ElseIf nor and Else; however, if you put the <do something code on a separate line from the Then keyword, you can. -- Rick (MVP - Excel) "John" wrote in message ... Hi Everyone Below is a sample of my codes for a Staircase Calculator. My problem is at the If command at the bottom, I tried different things but no success, I need your help. Regards John Sub Make_Stairs4() Dim nx As Variant nx = 4 Application.ScreenUpdating = False ActiveWindow.Zoom = 100 Height_size = Range("G1").Value Width_size = Range("G2").Value Left_size = Range("K1").Value Top_size = Range("K2").Value ActiveSheet.Shapes.AddShape(msoShapeRightTriangle, _ Left_size, Top_size, Width_size, Height_size).Select 'Selection.Characters.Text = "4" Selection.ShapeRange.Fill.ForeColor.RGB = RGB(255, 255, 255) Selection.ShapeRange.Fill.Transparency = 0.65 Selection.ShapeRange.Line.Weight = 0.75 Selection.ShapeRange.Line.ForeColor.RGB = RGB(10, 10, 10) Selection.ShapeRange.Line.BackColor.RGB = RGB(255, 255, 255) ActiveSheet.Range("D2").Select If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" , Exit Sub Else: Selection.Characters.Text = "4" End If Call Make_Stairs5 End Sub |
Problem with If,Then, Else
Hi Rick
Explaining myself in English is not my forte but will sure try. With this line, I'm inserting text in the Triangle Selection.Characters.Text = "Floor" If I type this line at the top like this: ActiveSheet.Shapes.AddShape(msoShapeRightTriangle, _ Left_size, Top_size, Width_size, Height_size).Select Selection.Characters.Text = "Floor" it works, but below in the IF statement it doesn't. What it's doing is numbering the stairs and if you reach the last stair, instead of a number, it should print "Floor". Hope I have explained it better for you, if not , please tell me, will be glad to try again. Thank you for your patience. Regards John "Rick Rothstein" wrote in message ... Actually, I didn't look at what the code is supposed to be doing; rather, I just spotted the structural error and posted the correction for it. As to your current question, what is this line... Selection.Characters.Text = "Foor" supposed to be doing? Are you just trying to assign "Foor" to the selected cell or cells? If so, just do this... Selection.Value = "Foor" If you are attempting to do something else, you will have to give a more detailed description. And, in addition to such a description, I would want to know if the selected cell or cells contain formulas or text constants. -- Rick (MVP - Excel) "John" wrote in message ... Hi Rick Thank you for your reply. When I execute the codes, it stops at this line Selection.Characters.Text = "Foor" Runtime error 1004 Unable to set the text property of the character class. Best regards John "Rick Rothstein" wrote in message ... If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" , Exit Sub Else: Selection.Characters.Text = "4" End If Forget trying to combine things on the same line and use normal blocking... If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" Exit Sub Else Selection.Characters.Text = "4" End If As for your error, you can't mix putting commands after the Then keyword with Else conditionals. If you have this... If <logical expression Then <do something then you cannot follow it with an ElseIf nor and Else; however, if you put the <do something code on a separate line from the Then keyword, you can. -- Rick (MVP - Excel) "John" wrote in message ... Hi Everyone Below is a sample of my codes for a Staircase Calculator. My problem is at the If command at the bottom, I tried different things but no success, I need your help. Regards John Sub Make_Stairs4() Dim nx As Variant nx = 4 Application.ScreenUpdating = False ActiveWindow.Zoom = 100 Height_size = Range("G1").Value Width_size = Range("G2").Value Left_size = Range("K1").Value Top_size = Range("K2").Value ActiveSheet.Shapes.AddShape(msoShapeRightTriangle, _ Left_size, Top_size, Width_size, Height_size).Select 'Selection.Characters.Text = "4" Selection.ShapeRange.Fill.ForeColor.RGB = RGB(255, 255, 255) Selection.ShapeRange.Fill.Transparency = 0.65 Selection.ShapeRange.Line.Weight = 0.75 Selection.ShapeRange.Line.ForeColor.RGB = RGB(10, 10, 10) Selection.ShapeRange.Line.BackColor.RGB = RGB(255, 255, 255) ActiveSheet.Range("D2").Select If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" , Exit Sub Else: Selection.Characters.Text = "4" End If Call Make_Stairs5 End Sub |
Problem with If,Then, Else
Try this. Hope this helps! If so, let me know, click "YES" below.
Sub Make_Stairs4() Dim nx As Variant nx = 4 Application.ScreenUpdating = False ActiveWindow.Zoom = 100 Height_size = Range("G1").Value Width_size = Range("G2").Value Left_size = Range("K1").Value Top_size = Range("K2").Value ActiveSheet.Shapes.AddShape(msoShapeRightTriangle, _ Left_size, Top_size, _ Width_size, Height_size).Select 'Selection.Characters.Text = "4" With Selection.ShapeRange .Fill.ForeColor.RGB = RGB(255, 255, 255) .Fill.Transparency = 0.65 .Line.Weight = 0.75 .Line.ForeColor.RGB = RGB(10, 10, 10) .Line.BackColor.RGB = RGB(255, 255, 255) End With ActiveSheet.Range("D2").Select If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" Exit Sub Else Selection.Characters.Text = "4" End If Call Make_Stairs5 End Sub -- Cheers, Ryan "John" wrote: Hi Everyone Below is a sample of my codes for a Staircase Calculator. My problem is at the If command at the bottom, I tried different things but no success, I need your help. Regards John Sub Make_Stairs4() Dim nx As Variant nx = 4 Application.ScreenUpdating = False ActiveWindow.Zoom = 100 Height_size = Range("G1").Value Width_size = Range("G2").Value Left_size = Range("K1").Value Top_size = Range("K2").Value ActiveSheet.Shapes.AddShape(msoShapeRightTriangle, _ Left_size, Top_size, Width_size, Height_size).Select 'Selection.Characters.Text = "4" Selection.ShapeRange.Fill.ForeColor.RGB = RGB(255, 255, 255) Selection.ShapeRange.Fill.Transparency = 0.65 Selection.ShapeRange.Line.Weight = 0.75 Selection.ShapeRange.Line.ForeColor.RGB = RGB(10, 10, 10) Selection.ShapeRange.Line.BackColor.RGB = RGB(255, 255, 255) ActiveSheet.Range("D2").Select If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" , Exit Sub Else: Selection.Characters.Text = "4" End If Call Make_Stairs5 End Sub . |
Problem with If,Then, Else
Thanks for your reply.
It's the same thing as Rick, getting the same error. Any ideas ? Regards John "Ryan H" wrote in message ... Try this. Hope this helps! If so, let me know, click "YES" below. Sub Make_Stairs4() Dim nx As Variant nx = 4 Application.ScreenUpdating = False ActiveWindow.Zoom = 100 Height_size = Range("G1").Value Width_size = Range("G2").Value Left_size = Range("K1").Value Top_size = Range("K2").Value ActiveSheet.Shapes.AddShape(msoShapeRightTriangle, _ Left_size, Top_size, _ Width_size, Height_size).Select 'Selection.Characters.Text = "4" With Selection.ShapeRange .Fill.ForeColor.RGB = RGB(255, 255, 255) .Fill.Transparency = 0.65 .Line.Weight = 0.75 .Line.ForeColor.RGB = RGB(10, 10, 10) .Line.BackColor.RGB = RGB(255, 255, 255) End With ActiveSheet.Range("D2").Select If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" Exit Sub Else Selection.Characters.Text = "4" End If Call Make_Stairs5 End Sub -- Cheers, Ryan "John" wrote: Hi Everyone Below is a sample of my codes for a Staircase Calculator. My problem is at the If command at the bottom, I tried different things but no success, I need your help. Regards John Sub Make_Stairs4() Dim nx As Variant nx = 4 Application.ScreenUpdating = False ActiveWindow.Zoom = 100 Height_size = Range("G1").Value Width_size = Range("G2").Value Left_size = Range("K1").Value Top_size = Range("K2").Value ActiveSheet.Shapes.AddShape(msoShapeRightTriangle, _ Left_size, Top_size, Width_size, Height_size).Select 'Selection.Characters.Text = "4" Selection.ShapeRange.Fill.ForeColor.RGB = RGB(255, 255, 255) Selection.ShapeRange.Fill.Transparency = 0.65 Selection.ShapeRange.Line.Weight = 0.75 Selection.ShapeRange.Line.ForeColor.RGB = RGB(10, 10, 10) Selection.ShapeRange.Line.BackColor.RGB = RGB(255, 255, 255) ActiveSheet.Range("D2").Select If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" , Exit Sub Else: Selection.Characters.Text = "4" End If Call Make_Stairs5 End Sub . |
Problem with If,Then, Else
Thanks for your help Rick
I got it working, "ActiveSheet.Range("D2").Select" was in conflict I guess!! I change its location and it's working. Regards John "Rick Rothstein" wrote in message ... Actually, I didn't look at what the code is supposed to be doing; rather, I just spotted the structural error and posted the correction for it. As to your current question, what is this line... Selection.Characters.Text = "Foor" supposed to be doing? Are you just trying to assign "Foor" to the selected cell or cells? If so, just do this... Selection.Value = "Foor" If you are attempting to do something else, you will have to give a more detailed description. And, in addition to such a description, I would want to know if the selected cell or cells contain formulas or text constants. -- Rick (MVP - Excel) "John" wrote in message ... Hi Rick Thank you for your reply. When I execute the codes, it stops at this line Selection.Characters.Text = "Foor" Runtime error 1004 Unable to set the text property of the character class. Best regards John "Rick Rothstein" wrote in message ... If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" , Exit Sub Else: Selection.Characters.Text = "4" End If Forget trying to combine things on the same line and use normal blocking... If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" Exit Sub Else Selection.Characters.Text = "4" End If As for your error, you can't mix putting commands after the Then keyword with Else conditionals. If you have this... If <logical expression Then <do something then you cannot follow it with an ElseIf nor and Else; however, if you put the <do something code on a separate line from the Then keyword, you can. -- Rick (MVP - Excel) "John" wrote in message ... Hi Everyone Below is a sample of my codes for a Staircase Calculator. My problem is at the If command at the bottom, I tried different things but no success, I need your help. Regards John Sub Make_Stairs4() Dim nx As Variant nx = 4 Application.ScreenUpdating = False ActiveWindow.Zoom = 100 Height_size = Range("G1").Value Width_size = Range("G2").Value Left_size = Range("K1").Value Top_size = Range("K2").Value ActiveSheet.Shapes.AddShape(msoShapeRightTriangle, _ Left_size, Top_size, Width_size, Height_size).Select 'Selection.Characters.Text = "4" Selection.ShapeRange.Fill.ForeColor.RGB = RGB(255, 255, 255) Selection.ShapeRange.Fill.Transparency = 0.65 Selection.ShapeRange.Line.Weight = 0.75 Selection.ShapeRange.Line.ForeColor.RGB = RGB(10, 10, 10) Selection.ShapeRange.Line.BackColor.RGB = RGB(255, 255, 255) ActiveSheet.Range("D2").Select If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" , Exit Sub Else: Selection.Characters.Text = "4" End If Call Make_Stairs5 End Sub |
Problem with If,Then, Else
Thanks for your help Ryan
I got it working, "ActiveSheet.Range("D2").Select" was in conflict I guess!! I change its location and it's working. Regards John "Ryan H" wrote in message ... Try this. Hope this helps! If so, let me know, click "YES" below. Sub Make_Stairs4() Dim nx As Variant nx = 4 Application.ScreenUpdating = False ActiveWindow.Zoom = 100 Height_size = Range("G1").Value Width_size = Range("G2").Value Left_size = Range("K1").Value Top_size = Range("K2").Value ActiveSheet.Shapes.AddShape(msoShapeRightTriangle, _ Left_size, Top_size, _ Width_size, Height_size).Select 'Selection.Characters.Text = "4" With Selection.ShapeRange .Fill.ForeColor.RGB = RGB(255, 255, 255) .Fill.Transparency = 0.65 .Line.Weight = 0.75 .Line.ForeColor.RGB = RGB(10, 10, 10) .Line.BackColor.RGB = RGB(255, 255, 255) End With ActiveSheet.Range("D2").Select If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" Exit Sub Else Selection.Characters.Text = "4" End If Call Make_Stairs5 End Sub -- Cheers, Ryan "John" wrote: Hi Everyone Below is a sample of my codes for a Staircase Calculator. My problem is at the If command at the bottom, I tried different things but no success, I need your help. Regards John Sub Make_Stairs4() Dim nx As Variant nx = 4 Application.ScreenUpdating = False ActiveWindow.Zoom = 100 Height_size = Range("G1").Value Width_size = Range("G2").Value Left_size = Range("K1").Value Top_size = Range("K2").Value ActiveSheet.Shapes.AddShape(msoShapeRightTriangle, _ Left_size, Top_size, Width_size, Height_size).Select 'Selection.Characters.Text = "4" Selection.ShapeRange.Fill.ForeColor.RGB = RGB(255, 255, 255) Selection.ShapeRange.Fill.Transparency = 0.65 Selection.ShapeRange.Line.Weight = 0.75 Selection.ShapeRange.Line.ForeColor.RGB = RGB(10, 10, 10) Selection.ShapeRange.Line.BackColor.RGB = RGB(255, 255, 255) ActiveSheet.Range("D2").Select If nx = Range("A3").Value Then Selection.Characters.Text = "Foor" , Exit Sub Else: Selection.Characters.Text = "4" End If Call Make_Stairs5 End Sub . |
All times are GMT +1. The time now is 03:24 AM. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com