ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Operator syntax - VBA problem (https://www.excelbanter.com/excel-programming/308837-operator-syntax-vba-problem.html)

laserface

Operator syntax - VBA problem
 
Sorry, this is probably a daft question but its driving me nuts.

I want to write a routine where a picture becomes visible or no
depending on the magnitude of a number in a particular cell.

The following works ok on a single greater than condition
The image being contained in an image control obviously.

If Sheet5.Cells(6, 11) 40 Then
Sheet5.Image1.Visible = True
Else
Sheet5.Image1.Visible = False
End If

However i want to use the "OR" function to make the picture visible i
the magnitude of a number in a particular cell falls between
particular range so i think the code should be something like


If Sheet5.Cells(6, 11) 40 or < 300 Then
Sheet5.Image1.Visible = True
Else
Sheet5.Image1.Visible = False
End If


But the line 40 or < 300 does not work and i cant figure out why.

Any and all suggestions greatfully recieved !

regards
LaserFac

--
Message posted from http://www.ExcelForum.com


Norman Jones

Operator syntax - VBA problem
 
Hi Laserface,

Try:

If Sheet5.Cells(6, 11) 40 And _
Sheet5.Cells(6, 11) < 300 Then

---
Regards,
Norman



"laserface " wrote in message
...
Sorry, this is probably a daft question but its driving me nuts.

I want to write a routine where a picture becomes visible or not
depending on the magnitude of a number in a particular cell.

The following works ok on a single greater than condition
The image being contained in an image control obviously.

If Sheet5.Cells(6, 11) 40 Then
Sheet5.Image1.Visible = True
Else
Sheet5.Image1.Visible = False
End If

However i want to use the "OR" function to make the picture visible if
the magnitude of a number in a particular cell falls between a
particular range so i think the code should be something like


If Sheet5.Cells(6, 11) 40 or < 300 Then
Sheet5.Image1.Visible = True
Else
Sheet5.Image1.Visible = False
End If


But the line 40 or < 300 does not work and i cant figure out why.

Any and all suggestions greatfully recieved !

regards
LaserFace


---
Message posted from http://www.ExcelForum.com/




Norman Jones

Operator syntax - VBA problem
 
Hi Grey Newt,

If Sheet5.Cells(1, 1).Value 40 Or Sheet1.Cells(6, 11).Value < 300 Then


I think that you need to replace Or with And

As written, your If condition will always return true.

---
Regards,
Norman



"Grey Newt" wrote in message
...
Try this....

Sub Tester()
If Sheet5.Cells(1, 1).Value 40 Or Sheet1.Cells(6, 11).Value < 300 Then
Sheet5.Shapes("Image1").Visible = False
Else
Sheet5.Shapes("Image1").Visible = True
End If

End Sub




"laserface " wrote:

Sorry, this is probably a daft question but its driving me nuts.

I want to write a routine where a picture becomes visible or not
depending on the magnitude of a number in a particular cell.

The following works ok on a single greater than condition
The image being contained in an image control obviously.

If Sheet5.Cells(6, 11) 40 Then
Sheet5.Image1.Visible = True
Else
Sheet5.Image1.Visible = False
End If

However i want to use the "OR" function to make the picture visible if
the magnitude of a number in a particular cell falls between a
particular range so i think the code should be something like


If Sheet5.Cells(6, 11) 40 or < 300 Then
Sheet5.Image1.Visible = True
Else
Sheet5.Image1.Visible = False
End If


But the line 40 or < 300 does not work and i cant figure out why.

Any and all suggestions greatfully recieved !

regards
LaserFace


---
Message posted from http://www.ExcelForum.com/





Tushar Mehta

Operator syntax - VBA problem
 
An oft-overlooked language capability is how booleans work.

Sheet5.Image1.Visible = _
Sheet5.Cells(6, 11) 40 and Sheet5.Cells(6, 11) < 300
--
Regards,

Tushar Mehta
www.tushar-mehta.com
Excel, PowerPoint, and VBA add-ins, tutorials
Custom MS Office productivity solutions

In article , laserface
says...
Sorry, this is probably a daft question but its driving me nuts.

I want to write a routine where a picture becomes visible or not
depending on the magnitude of a number in a particular cell.

The following works ok on a single greater than condition
The image being contained in an image control obviously.

If Sheet5.Cells(6, 11) 40 Then
Sheet5.Image1.Visible = True
Else
Sheet5.Image1.Visible = False
End If

However i want to use the "OR" function to make the picture visible if
the magnitude of a number in a particular cell falls between a
particular range so i think the code should be something like


If Sheet5.Cells(6, 11) 40 or < 300 Then
Sheet5.Image1.Visible = True
Else
Sheet5.Image1.Visible = False
End If


But the line 40 or < 300 does not work and i cant figure out why.

Any and all suggestions greatfully recieved !

regards
LaserFace


---
Message posted from http://www.ExcelForum.com/



laserface[_2_]

Operator syntax - VBA problem
 
Outstanding response on this forum.
I managed to resolve the problem after referrring to all your answer
using AND and OR operators.

Many thanks to you all for the excellent and rapid assistance.

regards,
Laserfac

--
Message posted from http://www.ExcelForum.com



All times are GMT +1. The time now is 01:24 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com