Option Explicit
Function Arobas(ByVal Source As String, ParamArray Masques()) As String
Dim N, Masque As String, Rés As String, P&, CSrc As String * 1, CMsq As String * 1
Arobas = ""
For N = 0 To UBound(Masques)
Masque = Masques(N): CMsq = Left$(Masque, 1)
Rés = ""
For P = 1 To Len(Source)
CSrc = Mid$(Source, P, 1)
If CSrc <> CMsq Then
Rés = Rés & CSrc
ElseIf Len(Masque) = 1 Then
Source = Rés & Mid$(Source, P + 1)
Arobas = Arobas & "@" & N + 1: Exit For
Else
Masque = Mid$(Masque, 2): CMsq = Left$(Masque, 1): End If
Next P, N
Arobas = Arobas & Source
End Function