Here's version of what I use:
Public Sub Main()
Dim sPath As String
Dim oDocCurWeek As Document
sPath = "H:\Weekly Reports\"
Set oDocCurWeek = ActiveDocument
With oDocCurWeek
.SaveAs FileName:=sPath & "Weekly Status Report " & fReportPeriod
Set oRng = oDocCurWeek.Bookmarks("ReportPeriod").Range
oRng.Text = fReportPeriod
oDocCurWeek.Bookmarks.Add Name:="ReportPeriod", Range:=oRng
End With
End Sub
Public Function fReportPeriod() As String
Dim dFirstDayOfWeek As Date
Dim dCurrDayOfWeek As Date
Dim sReportPeriod As String
dFirstDayOfWeek = DateAdd(Interval:="d", _
Number:=-(Weekday(Date:=Date, FirstDayOfWeek:=vbMonday) - 1), _
Date:=Date)
dCurrDayOfWeek = Date
sReportPeriod = Day(Date:=dFirstDayOfWeek) & "-" & Day(Date:=dCurrDayOfWeek)
If fMonthName(dDate:=dFirstDayOfWeek) = _
fMonthName(dDate:=dCurrDayOfWeek) Then
fReportPeriod = fMonthName(dDate:=dFirstDayOfWeek) & " " & _
sReportPeriod
Else
fReportPeriod = fMonthName(dDate:=dFirstDayOfWeek) & " " _
& Day(Date:=dFirstDayOfWeek) & "-" & _
fMonthName(dDate:=dCurrDayOfWeek) & " " _
& Day(Date:=dCurrDayOfWeek)
End If
End Function
Public Function fMonthName(dDate As Date) As String
fMonthName = MonthName _
(Month:=DatePart("m", Date:=dDate), _
Abbreviate:=True)
End Function
HTH,
Dave