Nice one. Got bitten by this one recently. Was using FTPPut() UDF and the password had an @ in it. FTPPut() writes a FTP command file and the @ character got replaced by your example and the files did not got send to the FTP server. The fact that FTPPut() deletes the command file when it is done made me look at the code for several hours before finding this.
If a @ character is used and it makes an invalid macro whit the characters after the @ imho it would best return something like unknown:macroname.
_________________________
Mart

- Chuck Norris once sold ebay to ebay on ebay.