Please respect the time of people that assist, and post all the information needed to duplicate a problem. This, for example, works fine:

Sub x()
    Dim vArray As Variant
    
    vArray = Array("A", "B", "C")
    fnAddToArray "D", vArray
    MsgBox vArray(UBound(vArray))
End Sub

Function fnAddToArray(ByVal strToAdd As String, vArray As Variant) As Variant
    ReDim Preserve vArray(UBound(vArray) + 1)
    vArray(UBound(vArray)) = strToAdd
End Function