2010年9月7日火曜日

EXCELで16進数の連番を入力する方法

自分の為の覚え書き。

例えば、以下のような表を作ることを考えます。

00-A0-DE-00-00-00
00-A0-DE-00-00-01
:
00-A0-DE-00-00-0F
00-A0-DE-00-00-10
:
00-A0-DE-00-00-FF

例にあげたのはMACアドレスのリスト。全256行。
もちろん全部手入力するのはしんどいので、何とか自動化したいと考えます。

問題になるのは最後の桁が16進数になっているところ。もし10進数だったらオートフィルを使えばマウスドラッグで入力できるのですが、16進数だと残念ながらオートフィルは使えません。

ということで、以下の方法を使えばOK。

(1)DEC2HEX関数を使えるようにする。Windowsだと「分析ツールアドイン」のインストールが必要のようです。Mac版のEXCEL2008では標準でインストールされてました。
(2)セルに
="00-A0-DE-00-00-" & DEC2HEX(ROW(),2)
等と入力し、256行分コピペします。ROW() のところは適当な値に修正して下さい。予め左端に通し番号を記入しておいて、その通し番号-1 を参照しても良いでしょう。
これで256行の MAC アドレスリストが表示されるはずです。
(3)DEC2HEX が使えない環境にファイルを渡したときも正しく読めるように、文字列に変換します。MACアドレスが表示されているセルをコピーし、文字列としてペーストすればOK。

(3)を忘れると、自分の環境ではきちんと読めるのに、人に渡すと #NAME? と表示されてしまうことになってしまうので注意しましょう。

0 件のコメント: