Excelで、2進数から16進数変換表記

Excelで、2進数で入力してその値を右のセルあたりに16進数で表示したい場合の式です。
基本的に変換して出力してくれる関数は内容なのでマクロを使うしか無いみたいですが、いちいちマクロを動かすのもメンドウなので関数で実現してみました。
(大した事無いですが・・・。)
欠点は、8ビットのみに対応な点です。それ以上の場合はがんばりましょう。(大した事ないでしょ?)

いちいち考えるのがメンドウなのでメモって感じです。

1.2進数を入力するセルの書式を、ユーザー定義で「0000 0000」と入力する。
2.上位4ビットを10進へ変換するためにC列へ
  「=RIGHT(INT(B4/10000),1)+RIGHT(INT(B4/100000),1)*2+RIGHT(INT(B4/1000000),1)*4+RIGHT(INT(B4/10000000),1)*8」
  と、入力する
3.下位4ビットを10進へ変換するためにD列へ
  「
=RIGHT(B4,1)+RIGHT(INT(B4/10),1)*2+RIGHT(INT(B4/100),1)*4+RIGHT(INT(B4/1000),1)*8」
4.16進で表示するためにE列へ
  「=IF(ISBLANK(B4),"","0x" & IF(C4<10,C4,CHAR(65+C4-10)) & IF(D4<10,D4,CHAR(65+D4-10)))」
  と、入力する。

最終的に、CとD列は表示しない設定にしましょう。