View Single Post
  #6   Report Post  
Posted to microsoft.public.excel.programming
Varne Varne is offline
external usenet poster
 
Posts: 126
Default Event Driven Procedure

Hi!

Sorry if I am asking for something not possible!

I cannot see but I can deduce if the cells(1,1) in Sheet1 has gone red or
not by extending your codes as given below. Cell(1,1) does not go red when I
unhide Sheet2.

If I do not want any codes written in 'MS Excel Object Sheet2' or in 'MS
Excel Object ThisWorkbook' is there an other way to make this happen?

Like the inbuilt 'Activate' event can't we create an 'Unhide' event?

Thanks.

Private Sub Worksheet_Activate()

For x = 1 To Worksheets.Count
If Sheets(x).Visible = True Then
viz = viz + 1
End If
Next
If viz 1 Then
Worksheets(1).Cells(1, 1).Interior.ColorIndex = 3
Else
Worksheets(1).Cells(1, 1).Interior.ColorIndex = xlNone
End If

If Worksheets(1).Cells(1, 1).Interior.ColorIndex = 3 Then
Worksheets(2).Cells(1, 1).Interior.ColorIndex = 3
Else
Worksheets(2).Cells(1, 1).Interior.ColorIndex = xlNone
End If

End Sub







"Mike H" wrote:

Hi,

I'm not sure what you mean the act of unhiding the second sheet selects it
so you can't see in the first sheet whether A1 is red or not. You could put
this in the other sheet that gets hidden

Private Sub Worksheet_Activate()
Worksheets(1).Cells(1, 1).Interior.ColorIndex = xlNone
End Sub

Mike
"Varne" wrote:

Hi!

It works but only after 2 events. Unhiding the second sheet and activating
the first sheet. If possible could you please adjust the codes to show red
immediately after unhiding the second sheet.

Thank You!

"Mike H" wrote:

Hi,

Right click the sheet tab of the 'first sheet' view code and paste this in
and try it

Private Sub Worksheet_Activate()
For x = 1 To Worksheets.Count
If Sheets(x).Visible Then
viz = viz + 1
End If
Next
If viz < 2 Then
Worksheets(1).Cells(1, 1).Interior.ColorIndex = 3
Else
Worksheets(1).Cells(1, 1).Interior.ColorIndex = xlNone
End If
End Sub


Mike

"Varne" wrote:

Hi!

In an Excel workbook with 2 pages the 2nd is hidden. If it is unhidden the
following Macro should be triggered;

Sub Test ()

Worksheets(1).Cells(1,1).Interior.Colorindex=3

End Sub

Could someone help?

Thank You!