No tengo muy claro el asunto, pero creo que el array param() lo deberías pasar como matriz.
Algo así:
Código vb:
Ver originalPrivate Sub Command1_Click()
funcion1 "p1", "p2"
End Sub
Private Sub funcion1(ParamArray param() As Variant)
Dim matriz() As Variant
ReDim matriz(UBound(param))
Dim f As Long
For f = 0 To UBound(param)
matriz(f) = param(f)
Next f
funcion2 matriz()
End Sub
Private Sub funcion2(param() As Variant)
Dim f As Long
For f = 0 To UBound(param)
MsgBox param(f)
Next f
End Sub
Saludos
PD: Notarás que he creado una nueva matriz para llenarla con la matriz que llegó con el paramarray. Es necesario, ya que la matriz del paramarray no parece ser válida para ser mandada a otra función, de modo que tuve que crear una nueva matriz para llamar a la funcion2. Al menos a mí no me dejó mandarla directamente.