没什么问题吧,因为不知道你的PX是什么类型,我改成Collection对象写了一段代码
Private Sub CommandButton1_Click()
Dim cllp1 As Collection
Dim cllp2 As Collection
Set cllp1 = New Collection
Set cllp2 = New Collection
cllp1.Add "p1"
cllp2.Add "p2"
Call mySwap(cllp1, cllp2)
Call MsgBox(cllp1.Item(1) & cllp2.Item(1))
End Sub
Private Sub mySwap(p1 As Collection, p2 As Collection)
Dim T As New Collection
Set T = p1
Set p1 = p2
Set p2 = T
End Sub