Activate sheet with cell value

adamsm

Active Member
Joined
Apr 20, 2010
Messages
444
Hi,

How could I make the following code to activate the sheet that a user types on Cell G5.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)

If Range("G5").Value = "FALSE" Then


Worksheets("Mail").Activate
      End If
      
  
End Sub

Suppose if the user types "Mail" in cell G5 I want the sheet Mail to be activated. If the user types "Mysheet" I want the referenced sheet to activated.

Any help on this would be kindly appreciated.

Thanks in advance.
 

Excel Facts

How to fill five years of quarters?
Type 1Q-2023 in a cell. Grab the fill handle and drag down or right. After 4Q-2023, Excel will jump to 1Q-2024. Dash can be any character.
Try

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(False, False) = "G5" Then
    On Error Resume Next
    Sheets(Target.Value).Select
    On Error GoTo 0
End If
End Sub
 
Upvote 0
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not IsEmpty(Range("G5")) Then
        Worksheets(Range("G5")).Activate
    End If
End Sub
 
Upvote 0
Thanks for the help. The first code works better. With the second one im getting debug message. Suppose if I want to extend the range from A5 to G5 how should I change the range of the code for that?

Any help would be kindly appreciated.
 
Upvote 0
Try

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A5:G5")) Is Nothing Then
    On Error Resume Next
    Sheets(Target.Value).Select
    On Error GoTo 0
End If
End Sub
 
Upvote 0
Ah, yes. VoG's code is more reliable. I skipped error checking 'cause assumed that sheets' names are pre-defined.
 
Upvote 0
If I want to clear the contents after the required sheet is activated where should I insert the line Sheets(Target.Value).ClearContents

or is this a wrong line of code?
 
Upvote 0
Try

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A5:G5")) Is Nothing Then
    On Error Resume Next
    With Sheets(Target.Value)
        .UsedRange.ClearContents
        .Select
    End With
    On Error GoTo 0
End If
End Sub
 
Upvote 0
I'm sorry but it does not clear the range from the sheet where the code is embedded. What may be the reason for this?
 
Upvote 0
Unclear. Do you want to clear the whole sheet or the cell that you typed the sheet name into?
 
Upvote 0

Forum statistics

Threads
1,224,505
Messages
6,179,151
Members
452,891
Latest member
JUSTOUTOFMYREACH

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top