VBAには文字コードを判別するような関数などは用意されてません
自分で作る手もあると思いますけどWindowsに搭載されているmshtmlで処理させて文字コード種別を得るという手を考えた人もいますので、やってみてはどうでしょう
http://scripting.cocolog-nifty.com/blog/2007/02/vba_937b.html
こちらのコードがそのまま使えます。
http://scripting.cocolog-nifty.com/blog/2007/02/vba_937b.html
この関数の戻り値が、"utf-8"や"shift-jis"となるのでそれを利用すればいいです。
試してみます。