プロが教えるわが家の防犯対策術!

あるソフトのCSVデータがあり、
その中に4664という数値があります。
実際この数値をBCDデータの1234と変換したいです。
変換後のデータは0000~9999までの4桁で、
元データもその範囲外のデータはありません。
関数を探しても、9桁以上のものは変換できないようです。
A1セルの数値をE10セルに表示できる方法を教えてください
変換途中で、他のセルで2進数に変換して、とかでもいいです。
マクロより、単に関数がいいです。
宜しくお願いします。

A 回答 (2件)

E10セルに=DEC2HEX(A1, 4) と入力します



ちなみに4664は1238ではないでしょうか?

関数のヘルプです
10 進数を 16 進数に変換します。

この関数が使用できず、エラー値 #NAME? が返される場合は、分析ツール アドインを組み込む必要があります。

その方法は?
[ツール] メニューの [アドイン] をクリックします。[アドイン] の一覧の [分析ツール] チェック ボックスをオンにし、[OK] をクリックします。必要に応じて、セットアップ プログラムで表示される手順に従って操作します。
書式

DEC2HEX(数値,桁数)

数値 変換する 10 進の整数を指定します。数値に負の数を指定すると、桁数は無視され、10 桁 (40 ビット) の 16 進数が返されます。16 進数の最上位のビットは符号を表し、残りの 39 ビットは数値の大きさを表します。負の数は 2 の補数を使って表します。

桁数 16 進表記するときに使用する文字数 (桁数) を指定します。桁数を省略すると、必要最小限の桁数で結果が返されます。桁数を指定することによって、変換結果の先頭に 0 (ゼロ) を表示することができます。

解説

•数値 < -549,755,813,888 または数値 > 549,755,813,887 の場合、エラー値 #NUM! が返されます。
•数値に数値以外の値を指定すると、エラー値 #VALUE! が返されます。
•計算結果の桁数が指定した桁数の値よりも大きくなる場合、エラー値 #NUM! が返されます。
•桁数に整数以外の値を指定すると、小数点以下は切り捨てられます。
•桁数に数値以外の値を指定すると、エラー値 #VALUE! が返されます。
•桁数に負の数を指定すると、エラー値 #VALUE! が返されます。
使用例

使用例を新規のワークシートにコピーすると、計算結果を確認できます。

その方法は?

数式 説明 (計算結果)
=DEC2HEX(100, 4) 10 進数の 100 を 4 桁の 16 進数に変換します (0064)
=DEC2HEX(-54) 10 進数の -54 を 16 進数に変換します (FFFFFFFFCA)
    • good
    • 0
この回答へのお礼

回答有難うございます。
あれ?簡単にできた!
といった感じで、シンプルでベストです。
有難うございました。

お礼日時:2014/03/23 18:30

DEC2BIN関数で8bitずつ文字列に変換して連結する方法になります。


上桁の0を表示する方法と非表示にする方法では少々異なります。

9999を2進数に変換すると以下のようになります。
=DEC2BIN(INT(A1/256),8)&DEC2BIN(MOD(A1,256),8) → 0010011100001111

=(DEC2BIN(INT(A1/256),8)+0)&DEC2BIN(MOD(A1,256),8) → 10011100001111

4664 → 2進数変換 → 0001001000111000
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!