
数学が得意で、Excelの達人の方!(じゃなくてもいいんですが……)
たとえば、Windowsに載っている、電卓を関数モードで使うと、16進法10進法8進法2進法の変換ができるんですが、ほかには変換できません。
と、言うことで、数字(12桁以上必要)を入れると、ほかの進法に変わるシートを作りたいんですが、ぜんぜんうまくいきません。
誰か、うまいのを教えてください。体裁は気にしません。
※変換前のn進法のnを、たとえばA2に入力
※変換後のn'進法のn'を、たとえばA3に入力
※変換する、n進数を入力
と、こんなシートを作りたいんです。
よろしくお願いいたします。
No.4ベストアンサー
- 回答日時:
マクロ(visual basic)を使えば何とでもなります。
でもマクロなしでやってみたいですね。とりあえず符号は付けないものとします。n進法から10進法への変換、10進法からm進法への変換、の二つを作れば便利ですね。
n進法から10進法への変換
cell $A$1 にnの数値を入力し、(n≦18)
cell $B$1 にn進法で表した値(文字列)を入力することにします。取りあえず12桁以内ということにしましょう。$B$1 は文字列である事が確実であるように、先頭に ' (quote)を付けて入力します。cellの中で左寄せに表示されることを確認してね。
さて$C$1 には次の式を入力。
=SUM(IF(LEN(B1)-{11,10,9,8,7,6,5,4,3,2,1,0}<1,0,(SEARCH(MID(B1,LEN(B1)-{11,10,9,8,7,6,5,4,3,2,1,0},1),"0123456789abcdefghi")-1))*$A$1^{11,10,9,8,7,6,5,4,3,2,1,0})
そして、数式表示バーの中にカーソルを置いた状態(数式のどこかをクリック)で、Control キーを押しながらEnter (Macならリンゴマークのキーを押しながらEnter)します。この操作は複数のセルに答を表示させるような、配列を返す関数に使うもので、数式バーには(入力したおぼえのない){}が自動的に付加されて
{=SUM(IF(LEN(B1)-{11,10,9,8,7,6,5,4,3,2,1,0}<1,0,(SEARCH(MID(B1,LEN(B1)-{11,10,9,8,7,6,5,4,3,2,1,0},1),"0123456789abcdefghi")-1))*$A$1^{11,10,9,8,7,6,5,4,3,2,1,0})}
と表示されるはずです。
10進法からm進法への変換。
cell $A$2 にmの数値を入力し、cell $C$1に表示されている10進数値をm進法に変換した文字列をcell $B$2に表示させます。
残念ながら、文字列をくっつける関数concatenateが融通が利かないもんですから、以下のようにする必要があります。
まず、cell $D$2に
=(MID("0123456789ABCDEFGHI",MOD(INT(C1/$A$2^{15,14,13,12,11,10,9,8,7,6,5,4,3,2,1,0}),$A$2)+1,1))
を入力して、取りあえずenterを押します。
それから、cell $D$2から $S$2までを選択します(このとき、cell $D$2を最初に選ぶことが重要です。)すると、数式バーに今入れた式が表示されてますね。この式のなかのどこでも良いからカーソルを置き、そしてControl キーを押しながらEnter (Macならリンゴマークのキーを押しながらEnter)します。すると、$D$2から$S$2までのセルに1文字ずつ表示されます。これが各桁の数字を表している。
最後にこれをひとまとめにするために、cell $C$2に
=CONCATENATE(D2,E2,F2,G2,H2,I2,J2,K2,L2,M2,N2,O2,P2,Q2,R2,S2)
を入力します。
これでcell $C$2にm進法で表示した値が出たわけです。え?先頭にゼロがいっぱい付いているのが気に入らない?
No.3
- 回答日時:
n1 進法 の数字を n2 進法の数字に変換する。
但し,変換する数字の桁数は12桁以上必要
(通常の整数では表現できないほど大きい)
という意味ですね。
この場合 n はいくつまで使えればいいのですか。
また、例えば n = 37 とした場合、36に相当する数字は
どうやって表現しますか?
この回答への補足
回答ありがとうございます。
そうだった。0から、zまで行ったら……だめですね。(汗)
すいません、とりあえずは18進法以上は必要ないんです。説明不足でした。
No.2
- 回答日時:
ご質問の意味が今ひとつ分かり難いのですが....
要するに、3進数とか5進数を作りたいということでしょうか?
何に使われるんでしょう。私には16進数・・・以外が必要になる場面は思いつかないのですが......
ですが、考え方を書いておきます。
例えば 255を2進数にする場合。
次々に2で割っていけばいいわけです。
2 255 1 255/2=127...1
2 127 1 127/2=63...1
2 063 1 63/2=31...1
2 031 1 ・
2 015 1 ・
2 007 1 ・
2 003 1 ・
2 001
こうやって 出てきた1を下から順に、左から書いてやれば良いわけです。
一番下の001(本当は1です。桁揃えのために敢えて0を入れてあります。)から、上に11111111bと書けば、255を2進数にした答えです。
的が外れていたらごめんなさい。
因みにbは前の数値は2進数ですよ、ということです。
8進数はhだったと思います。(Hexから)
回答ありがとうございます。
つまり、「あまり」をだせばいいんですね!あまりを下から順に書いていけば、答えがわかるのか。
ぜんぜん的外れではないです!
No.1
- 回答日時:
n進数はご質問にあるように「16進法10進法8進法2進法」とすると、
実は関数が用意されています。
n : n→10 10→n
16進数:HEX2DEC、DEC2HEX
8進法 :OCT2DEC、DEC2OCT
2進法 :BIN2DEC、DEC2BIN
ただし、通常のセットアップのままでは使用できません。
メニュー[ツール]-[アドイン]で「分析ツール」にチェックをいれてください。
回答ありがとうございます。
なるほど、そんな関数もあったんですか、DECというのは10進のことですね?
早速セットアップをしてみよう。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセル 全自動シフト表の祝日シフト表示を消すには? 3 2022/04/23 16:43
- Excel(エクセル) Excelシフト表 固定シフトの自動変換化 1 2022/04/14 16:10
- Visual Basic(VBA) VBA 検索と入力 Excel ブック ぶぶぶ シート ししし 列V 検索対象の列です 最終行は、お 6 2023/05/17 01:40
- その他(Microsoft Office) WordやExcelで英数字のみ半角または全角にしたい 6 2022/08/03 08:18
- 工学 疑似乱数生成器 3 2023/01/05 02:06
- その他(Microsoft Office) Microsoft Excelの文字変換で教えて下さい。 商社勤務です。 営業マンと言う言葉と○万な 2 2022/04/23 11:14
- デスクトップパソコン 40年間の悩み キーボードにおいて初期値として漢字ローマ字変換に設定する方法 8 2023/05/08 14:50
- Visual Basic(VBA) 入力ボックスが繰り返しポップアップして止まらない。 下記コードでファイル名の変更をしたいのですが、変 1 2022/09/08 11:27
- Excel(エクセル) 【至急 詳しい方教えて下さい】Excelの表を変換したい 6 2022/04/21 18:35
- ノートパソコン PCの漢字変換の変な癖?に困っています。 3 2022/10/11 21:27
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
決定性有限オートマトン
-
高3 数学
-
この問題、解き方は理解したの...
-
60人で30000個持ってるのと200...
-
コピーしたい本のページ数
-
【問題】 f(x) = x^2 - 4a x + ...
-
ルービックキューブと群論
-
3つの無理数a,b,cでf(x)=x^3+ax...
-
https://youtube.com/shorts/Kw...
-
1/(s(s^2+2s+5))を部分分数分解...
-
サイコロを100回投げて、奇数、...
-
上が✖で下が〇になる理由が、何...
-
至急 a²b+a-b-1 の因数分解...
-
ランダウの記号のとある演算
-
数学得意な人程宝くじ買わない...
-
数ⅱ等式の証明について。 条件...
-
limn→∞、10∧n=0?
-
xy平面上の点P(x,y)に対し,点Q(...
-
数学です。267の説明おねがいし...
-
数学者は夜行性か?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
厄介そうな定積分
-
二重和
-
確率の質問です
-
モンティホール問題について 問...
-
【 畳み込み積分 のτ 意味がよ...
-
数学が得意な人の考え方を知り...
-
この算数問題、何がおかしい? ...
-
サイコロを100回投げて、奇数、...
-
SPI 食塩水の等量交換 完全文系...
-
割り算の不思議
-
足し算のざっくり計算が苦手で...
-
問題 √2が無理数であることを入...
-
なぜ、Δtがdtではなくdτになる...
-
全体100人のうちリンゴ派90人み...
-
新幹線が最高速度に到達するま...
-
これって①番の公式を使うのでし...
-
2.2%は分数で表すと22/1000、約...
-
数学の問題です。110で最小値を...
-
積分について
-
三角関数ですこれはなぜx=0と...
おすすめ情報