Here are two ways of getting that information. The second is more compact than the first.
Function RetMonthNum(strMonthName As String) As Integer
Select Case strMonthName
Case "January", "Jan"
RetMonthNum = 1
Case "Februrary", "Feb"
RetMonthNum = 2
Case "March", "Mar"
RetMonthNum = 3
Case "April", "Apr"
RetMonthNum = 4
Case "May"
RetMonthNum = 5
Case "June", "Jun"
RetMonthNum = 6
Case "July", "Jul"
RetMonthNum = 7
Case "August", "Aug"
RetMonthNum = 8
Case "September", "Sep"
RetMonthNum = 9
Case "October", "Oct"
RetMonthNum = 10
Case November", "Nov"
RetMonthNum = 11
Case December", "Dec"
RetMonthNum = 12
End Select
End Function
Or here’s another method, (courtesy of Bob Askew):
'*******************************************
Public Function RtnMonthNum(pstrMonName As String) As Integer
'*******************************************
'Purpose: Returns month number (1 - 12)
' when provided a complete or partial
' month name.
'Coded by: raskew
'Input: From debug (immediate) window:
' 1) ? RtnMonthNum("April")
' 2) ? RtnMonthNum("Sep")
'Output: 1) 4
' 2) 9
'*******************************************
Dim strHold As String
Dim strMonth As String
Dim intMonth As Integer
strMonth = "JanFebMarAprMayJunJulAugSepOctNovDec"
strHold = Left(pstrMonName, 3)
intMonth = InStr(strMonth, strHold)
RtnMonthNum = intMonth \ 3 + 1
End Function

