- ベストアンサー
【VB6.】10進数を16進数に変換(符号つき)
お世話になります。 どうしてもわからないので教えてください。 やりたいことは以下です。 ●DecをHexの符号ありに(1byte)変換 ●結果としてDec「-02」を変換してHex「FE」が欲しい。 -128~127(変換後は80~7F)まで200通り以上あるので自動変換したいです。 使用しているインターネットのサイトだとできますが、VB6のプログラムで書くとうまくいきません。 ネットに繋がらない環境で変換しなくてはいけなくなったので、どなたか助けてください! お願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
・入力される数値は、-128~127の範囲とする。(範囲外の入力は考えない) ・入力された数値が負の場合は、変換元=256-入力値 ・入力された数値が正の場合は、変換元=入力値 ・もし必ず2桁必要なら、変換元に256を加える。 ・変換元をHex関数で16進変換する。(変換先に入れる) ・もし2桁が必要なら、変換先の右から2桁をとる。(Right関数)
その他の回答 (2)
- ahoo_chieokur
- ベストアンサー率36% (11/30)
回答No.3
一方、おいらはWindows標準の電卓をつかった。 #プログラム組むほどの事じゃなかろうよ
- tsunji
- ベストアンサー率20% (196/958)
回答No.1
Hex関数で変換して、Right関数で2文字取り出せばいい。 ゼロサプライが必要なら、変換した文字の頭に"0"をつければいい。
お礼
ありがとうございました!おかげさまでできました。 変換元に256というのが思い付きませんでした。16進数以外にも多数のデータをいろんな変換をする必要があったのでVBでやりたかった次第です。