title: IsInArray function error: Type Mismatch VBA
body: <p>When I run this, it gives me an error saying </p>
  
  <blockquote>
    <p>ByRef argument type mismatch</p>
  </blockquote>
  
  <p>in the if statement. </p>
  
  <p>I had all of the arrays declared as variants, but that also gave me an error when I tried to run the function. </p>
  
  <p>Any help would be greatly appreciated. </p>
  
  <pre><code>sub sort()
  
  Dim rowNo As Integer
  Dim colNo As Integer
  Dim PIList(6) As Long
  Dim GSList(2) As Long
  Dim FilterList(91) As Long
  Dim currCellCont As Long
  
  rowNo = 2
  colNo = 2
  PIList(6) = Array(0,1,2,3,4,5)
  GSList(2) = Array(6,7)
  FilterList(91) = Array(89752, 89753, 89754, 89755, 89756, 89757, 89758, 89759, 89760, 89761, 89762, 89763, 89764, 89765, 89766, 89767, 89768, 89769, 89770, 89771, 89772, 89773, 89774, 89775, 89776, 89777, 89778, 89779, 89780, 89781, 89782, 89783, 89784, 89785, 89786, 89787, 89788, 89789, 89790, 89791, 89792, 89793, 89794, 89795, 89796, 89797, 89798, 89799, 89800, 89801, 89802, 89803, 89804, 89805, 89806, 89807, 89808, 89809, 89810, 89811, 89812, 89813, 89814, 89815, 89816, 89817, 89818, 89819, 89820, 89821, 89822, 89823, 89824, 89825, 89826, 89827, 89828, 89829, 89830, 89831, 89832, 89833, 89834, 89835, 89836, 89837, 89838, 89839, 89840, 89841, 89842)
  currCellCont = Cells(rowNo, colNo).Value
  
  Do Until IsEmpty(currCellCont)
      If IsInArray(currCellCont, PIList) Then
          Cells(rowNo, 9).Value = "PI"
      ElseIf IsInArray(currCellCont, GSList) Then
          Cells(rowNo, 9).Value = "GS"
      ElseIf IsInArray(currCellCont, FilterList) Then
          Cells(roNo, colNo).Value = "Filter"
      End If
      currCellCont = Cells(rowNo + 1, colNo)
  Loop
  
  End Sub
  
  
  Function IsInArray(lookingFor As Long, arr As Long) As Boolean
      IsInArray = Not IsError(Application.Match(lookingFor, arr, 0))
  End Function
  </code></pre>