VBA で、フォルダを再帰的にたどって、ファイル処理するのでも、
関数の中で、同じ関数を呼んで、数百行も書いていたw

Ruby のglob で、** を使えば、簡単に再帰的にフォルダをたどれるのにw

Dir.glob( 'C:/Users/ユーザー名/Documents/test/**/*.txt' ) { |full_path| 処理 }

ファイル・テキスト処理で、Rubyに勝てる言語はない!
所詮、Excel エンジニアじゃ無理w

VBAより他に手段がないから、問題を難しくしてるだけ!