Gees - finally answered by own question, but confused myself along the
way.
For anyone else and to ensure I have understood correctly, the key is in
passing the string to the function using ByVal because by default
ByRef is used.
Blimey, been coding VBA for years and never had that before.