Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
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 |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
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 |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
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 |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
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 |
#5
Posted to microsoft.public.excel.programming
|
|||
|
|||
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 |
#6
Posted to microsoft.public.excel.programming
|
|||
|
|||
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 . |
#7
Posted to microsoft.public.excel.programming
|
|||
|
|||
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 . |
#8
Posted to microsoft.public.excel.programming
|
|||
|
|||
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 |
#9
Posted to microsoft.public.excel.programming
|
|||
|
|||
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 . |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Colon at the end of excel file name(ex: problem.xls:1, problem.xls | New Users to Excel | |||
Started out as an Access problem. Now an Excel problem | Excel Discussion (Misc queries) | |||
problem with a conditional max problem | Excel Discussion (Misc queries) | |||
Problem when multipple users access shared xl-file at the same time, macrocode for solve this problem? | Excel Programming |