![]() |
vba problem
All
Using formula to check date in a cell when opening workbook. Nb: A1 = today() if prior to 01/11/2006 ok no changes if equal to or after the 01/11/2006 then not ok and hide all sheets bar one called contact. It only works if exact match i.e. if date on sheet is 01/11/2006 If Sheets("Menu").Range("A1") = "01/11/2006" Then hide sheets and reveal contact The equal sign = being the key When I try = is grater than or equal to regardless of date (I.e. 31/10/2006 ) still hides sheets!!! HELP!!! Private Sub Workbook_Open() If Sheets("Menu").Range("A1") = "01/11/2006" Then Sheets(Array("Health Dec", "Menu", "UK", "EU", "XU", "WW", "AT EU", "AT WW", "Summary") _ ).Select Sheets("Health Dec").Activate ActiveWindow.SelectedSheets.Visible = False Sheets("Contact").Visible = True Sheets("Long stay").Select ActiveWindow.SelectedSheets.Visible = False End If End Sub |
vba problem
I used variables to store today's date, as well as the date you want to
check. Included message boxes to show the results. Works for me! Suggest you adapt your code accordingly Option Explicit Dim vTest As Variant, dDate As Date, dDate2 As Date Sub Checking() dDate = Range("A1").Value dDate2 = Now() If dDate <= dDate2 Then vTest = MsgBox("Date is before today's date") Else vTest = MsgBox("Date is after today's date") End If End Sub "PJ" wrote: All Using formula to check date in a cell when opening workbook. Nb: A1 = today() if prior to 01/11/2006 ok no changes if equal to or after the 01/11/2006 then not ok and hide all sheets bar one called contact. It only works if exact match i.e. if date on sheet is 01/11/2006 If Sheets("Menu").Range("A1") = "01/11/2006" Then hide sheets and reveal contact The equal sign = being the key When I try = is grater than or equal to regardless of date (I.e. 31/10/2006 ) still hides sheets!!! HELP!!! Private Sub Workbook_Open() If Sheets("Menu").Range("A1") = "01/11/2006" Then Sheets(Array("Health Dec", "Menu", "UK", "EU", "XU", "WW", "AT EU", "AT WW", "Summary") _ ).Select Sheets("Health Dec").Activate ActiveWindow.SelectedSheets.Visible = False Sheets("Contact").Visible = True Sheets("Long stay").Select ActiveWindow.SelectedSheets.Visible = False End If End Sub |
vba problem
Use "date literals" instead of strings.
From Excel VBA help: date literal: Any sequence of characters with a valid format that is surrounded by number signs (#). Valid formats include the date format specified by the locale settings for your code or the universal date format. For example, #12/31/92# is the date literal that represents December 31, 1992, where English-U.S. is the locale setting for your application. Use date literals to maximize portability across national languages. -- Festina Lente "PJ" wrote: All Using formula to check date in a cell when opening workbook. Nb: A1 = today() if prior to 01/11/2006 ok no changes if equal to or after the 01/11/2006 then not ok and hide all sheets bar one called contact. It only works if exact match i.e. if date on sheet is 01/11/2006 If Sheets("Menu").Range("A1") = "01/11/2006" Then hide sheets and reveal contact The equal sign = being the key When I try = is grater than or equal to regardless of date (I.e. 31/10/2006 ) still hides sheets!!! HELP!!! Private Sub Workbook_Open() If Sheets("Menu").Range("A1") = "01/11/2006" Then Sheets(Array("Health Dec", "Menu", "UK", "EU", "XU", "WW", "AT EU", "AT WW", "Summary") _ ).Select Sheets("Health Dec").Activate ActiveWindow.SelectedSheets.Visible = False Sheets("Contact").Visible = True Sheets("Long stay").Select ActiveWindow.SelectedSheets.Visible = False End If End Sub |
vba problem
I like:
If Sheets("Menu").Range("A1").Value = dateserial(2006,1,11) Then (01/11/2006 meant January 11th, 2006???) PJ wrote: All Using formula to check date in a cell when opening workbook. Nb: A1 = today() if prior to 01/11/2006 ok no changes if equal to or after the 01/11/2006 then not ok and hide all sheets bar one called contact. It only works if exact match i.e. if date on sheet is 01/11/2006 If Sheets("Menu").Range("A1") = "01/11/2006" Then hide sheets and reveal contact The equal sign = being the key When I try = is grater than or equal to regardless of date (I.e. 31/10/2006 ) still hides sheets!!! HELP!!! Private Sub Workbook_Open() If Sheets("Menu").Range("A1") = "01/11/2006" Then Sheets(Array("Health Dec", "Menu", "UK", "EU", "XU", "WW", "AT EU", "AT WW", "Summary") _ ).Select Sheets("Health Dec").Activate ActiveWindow.SelectedSheets.Visible = False Sheets("Contact").Visible = True Sheets("Long stay").Select ActiveWindow.SelectedSheets.Visible = False End If End Sub -- Dave Peterson |
vba problem
All
Thank you all for your suggestions What I did in the end to get it to work was in a seperate cells was: i.e. A2 =Today() A3 01/11/2006 in A4 if(A2=A3,1,0) cell A1= A4 Private Sub Workbook_Open() If Sheets("Menu").Range("A1") = "1" Then Sheets(Array("Health Dec", "Menu", "UK", "EU", "XU", "WW", "AT EU", "AT WW", "Summary")).Select Sheets("Health Dec").Activate ActiveWindow.SelectedSheets.Visible = False Sheets("Contact").Visible = True Sheets("Long stay").Select ActiveWindow.SelectedSheets.Visible = False End If End Sub Many thanks Paul "Dave Peterson" wrote in message ... I like: If Sheets("Menu").Range("A1").Value = dateserial(2006,1,11) Then (01/11/2006 meant January 11th, 2006???) PJ wrote: All Using formula to check date in a cell when opening workbook. Nb: A1 = today() if prior to 01/11/2006 ok no changes if equal to or after the 01/11/2006 then not ok and hide all sheets bar one called contact. It only works if exact match i.e. if date on sheet is 01/11/2006 If Sheets("Menu").Range("A1") = "01/11/2006" Then hide sheets and reveal contact The equal sign = being the key When I try = is grater than or equal to regardless of date (I.e. 31/10/2006 ) still hides sheets!!! HELP!!! Private Sub Workbook_Open() If Sheets("Menu").Range("A1") = "01/11/2006" Then Sheets(Array("Health Dec", "Menu", "UK", "EU", "XU", "WW", "AT EU", "AT WW", "Summary") _ ).Select Sheets("Health Dec").Activate ActiveWindow.SelectedSheets.Visible = False Sheets("Contact").Visible = True Sheets("Long stay").Select ActiveWindow.SelectedSheets.Visible = False End If End Sub -- Dave Peterson |
All times are GMT +1. The time now is 01:24 PM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com