![]() |
#1
|
|||
|
|||
![]()
A range within my worksheet contains values, lets say 1 - 50. If a value is found in any cell then the respectively named shape will be made visible and if the values aren't found, then the shape is hidden. My test code is:
Code:
Private Sub TestMe2() Dim rngList As Range Dim ws As Worksheet Set ws = Worksheets("Workings") Set wsRange = ws.Range("O2:W10") For Each rngList In wsRange If Application.CountIf(wsRange, rngList) > 0 Then Me.Shapes(rngList).Visible = True Else Me.Shapes(rngList).Visible = False End If Next rngList End Sub It's probably so simple, but I've drawn a blank (novice @ VBA). Any suggestions? Many thanks. |
#2
|
|||
|
|||
![]()
Hello wlcdo2
I suggest using Option Explicit at the top of your code modules. Using the same range for the loop and CountIf your If statement will always be >0. Believe you need to specify the shape type (or name) as well, something like .Shapes("Rectangle " & rngList).Visible = True Last edited by NoSparks; 02-21-2017 at 09:26 PM. Reason: added (or name) |
#3
|
|||
|
|||
![]()
Thanks for the guidance NoSparks.
Your suggestion about using the range for the loop and CountIf lead me to a new test by simply searching for a specific string value which worked just fine. I therefore declared a new string (in my example called FindMe based on rngList) and this now works perfectly! My new code is: Code:
Private Sub ShowShapes() Dim rngList As Range Dim FindMe As String Dim ws As Worksheet Set ws = Worksheets("Workings") Set wsRange = ws.Range("O2:W10") For Each rngList In wsRange FindMe = rngList If Application.CountIf(wsRange, FindMe) > 0 Then Me.Shapes(FindMe).Visible = True Else End If Next rngList End Sub Thanks again NoSparks for pointing me on the right direction, much appreciated! |
![]() |
Thread Tools | |
Display Modes | |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
![]() |
leops | PowerPoint | 4 | 08-31-2017 06:47 AM |
How to Hide/Un-hide a worksheet based on cell on another sheet. | easton11 | Excel Programming | 1 | 06-02-2015 12:07 PM |
![]() |
Marcus | Excel Programming | 8 | 08-17-2012 01:50 AM |
Loop through folder of workbooks and copy range to other workbook | Snvlsfoal | Excel Programming | 3 | 07-29-2011 05:55 AM |
PP 2010 .avi file plays during slide show, but causes the slide show to loop to begin | VictorS | PowerPoint | 0 | 10-16-2010 10:23 AM |