PDA

View Full Version : Open Workbook based on today's date



lewadan
02-02-2007, 05:34 AM
Is it possible to have a workbook open automatically if today's date matches a date that is located in a range from A10 through A30 in the workbook?
Thanks

Bob Phillips
02-02-2007, 06:41 AM
If Not IsError(Application.Match(CLng(Date), Worksheets("Sheet1").Range("A10:A30"), 0)) Then
Workbooks.Open ("C:\myFile.xls")
End If

mdmackillop
02-02-2007, 02:56 PM
Hi Lewadan,
Welcome to VBAX

As I understand the question, paste the following into the ThisWorkbook module of Personal.xls
Option Explicit

Private Sub Workbook_Open()
ProcessFiles
End Sub

Sub ProcessFiles()
Dim MyPath As String, MyName As String
Dim Sheet As String, Address As String
Dim d As Long

MyPath = "C:\AAA\"
MyName = "TestDate.xls"

For d = 10 To 30
If GetData(MyPath, MyName, "Sheet1", "A" & d) = Date Then
Workbooks.Open (MyPath & MyName)
Exit For
End If
Next
End Sub

Private Function GetData(Path, File, Sheet, Address)
Dim Data As String
Data = "'" & Path & "[" & File & "]" & Sheet & "'!" & _
Range(Address).Range("A1").Address(, , xlR1C1)
GetData = ExecuteExcel4Macro(Data)
End Function