title: Excel VBA - Sub or Function not defined Error
body: <p>I'm getting a compile error on this method and I can't figure out why. I'm getting the "Sub or Function not define" error.  Its probably something silly, but escaping me nontheless.
  Thanks in advance.</p>
  
  <pre><code>Public Function GetReportDate(dept As String) As String
  
      Dim dateOut As String   'this will be the returned value from the method
      Dim dateIn As String    'this is the date retrieved from the report
  
      Dim MonthNum As String
      Dim Temp As String      'this variable stores that date that will be manipulated
      Dim StartEnd(1 To 4, 1 To 4) As String
      Dim Period As String
      Dim Year As Integer
  
      'select the date string
      Select Case dept
      Case "Min and AMF": Cells(2, 2).Select
      Case Else: Cells(2, 1).Select
      End Select
  
      Selection.Font.Bold = True
  
      'store the month, day and year string to the array
      dateIn = ActiveCell.Value
      Temp = dateIn
      StartEnd(1, 1) = Mid(Temp, 1, 2)    '1st month
      StartEnd(1, 2) = Mid(Temp, 14, 2)   '2nd month
      StartEnd(2, 1) = Mid(Temp, 4, 2)    '1st day
      StartEnd(2, 2) = Mid(Temp, 17, 2)   '2nd day
      StartEnd(3, 1) = Mid(Temp, 7, 4)    '1st year
  
      'assign to two var
      MonthNum = StartEnd(1, 2)
      Year = StartEnd(3, 1)
  
      ' change the month format for the 1st month
      Select Case StartEnd(1, 1)
          Case "01": StartEnd(1, 1) = "Jan"
          Case "02": StartEnd(1, 1) = "Feb"
          Case "03": StartEnd(1, 1) = "Mar"
          Case "04": StartEnd(1, 1) = "Apr"
          Case "05": StartEnd(1, 1) = "May"
          Case "06": StartEnd(1, 1) = "Jun"
          Case "07": StartEnd(1, 1) = "Jul"
          Case "08": StartEnd(1, 1) = "Aug"
          Case "09": StartEnd(1, 1) = "Sep"
          Case "10": StartEnd(1, 1) = "Oct"
          Case "11": StartEnd(1, 1) = "Nov"
          Case "12": StartEnd(1, 1) = "Dec"
      End Select
  
      ' change the month format for the 2nd month
      Select Case StartEnd(1, 2)
          Case "01": StartEnd(1, 2) = "Jan"
          Case "02": StartEnd(1, 2) = "Feb"
          Case "03": StartEnd(1, 2) = "Mar"
          Case "04": StartEnd(1, 2) = "Apr"
          Case "05": StartEnd(1, 2) = "May"
          Case "06": StartEnd(1, 2) = "Jun"
          Case "07": StartEnd(1, 2) = "Jul"
          Case "08": StartEnd(1, 2) = "Aug"
          Case "09": StartEnd(1, 2) = "Sep"
          Case "10": StartEnd(1, 2) = "Oct"
          Case "11": StartEnd(1, 2) = "Nov"
          Case "12": StartEnd(1, 2) = "Dec"
      End Select
  
  
      'Change the Date Format After the Min Qem has been executed
      'If dept = "Min and AMF" Then
  
          ' the 1st and 2nd month are equal
          If StartEnd(1, 1) = StartEnd(1, 2) Then
              ' find the type of report
              If StartEnd(2, 2) - StartEnd(2, 1) &lt;= 7 Then
                  Period = "Week"
              Else
                   Period = "Month"
              End If
  
              ' change the report period to the right format
              ActiveCell = Period &amp; " of " &amp; StartEnd(1, 1) &amp; " " &amp; StartEnd(2, 1) &amp; " " _
                      &amp; "to" &amp; " " &amp; StartEnd(2, 2) &amp; " " &amp; Year
          Else     ' the 1st and 2nd month are NOT equal
              If 30 - StartEnd(2, 1) + StartEnd(2, 2) &gt;= 20 Then
                  Period = "Month"
              Else
                  Period = "Week"
              End If
  
  
      'change the header of the report to represt the period
                  ActiveCell = Period &amp; " of " &amp; StartEnd(1, 1) &amp; " " &amp; StartEnd(2, 1) _
                          &amp; " " &amp; "to" &amp; " " &amp; StartEnd(1, 2) &amp; " " &amp; StartEnd(2, 2) _
                          &amp; " " &amp; Year
              End If
  
          'return the dateout
          dateOut = Temp
          GetReportDate = dateOut
      End Function
  </code></pre>
  
  <p>When i call the method this is what I'm using.</p>
  
  <pre><code>CurReport = GetReportName(sDept)
  </code></pre>