The "if it's not too big" is potentially a very big "if".
IIRC the maximum length of a VBA string is 2GB, so the real constraint
is set by the available virtual memory and the way that a Replace()
would involve keeping more than one copy of the string in memory at a
time. So with an average modern machine it should be possible to handle
files of several, if not many, megabytes this way without problems. (I
routinely write Perl code that does this, but haven't yet needed to try
it in any dialect of VB).