• ベストアンサー

8桁までの足し算を教えてください。

出力用紙の都合で、計算結果が最大8桁となる縦計算の結果を、 Excelで元数字、合計数字ともにセル1つに数字1つを入れるかたちで 表示させる式が欲しいのですが、私がこれまでに持っている知識 だけでは式がやたら長くなってしまいます。 例)A1~A8、A2~H2、A3~H3 の和をA4~H4に表示する場合 =MID(RIGHT(" "&(($A1&$B1&$C1&$D1&$E1&$F1&$G1&$H1)+($A2&$B2&$C2&$D2&$E2&$F2&$G2&$H2))+ ($A3&$B3&$C3&$D3&$E3&$F3&$G3&$H3)),8),COLUMN(A1),1) コレをA4に貼ってB4~H4にコピーペースト。 …というようなことしか思いつかないのですが、 たった3行の計算結果を表示したいだけでこんなに長くなってしまいます。 仮に20行分の計算結果を求めたいとしたら +($A*&$B*&$C*&$D*&$E*&$F*&$G*&$H*) の部分を20行分も後ろに書き連ねることになってしまいます。 これを『より簡単な式で』8分割された個々のセルに最大8桁の数の計算結果を 正しく表示させるための方法は無いでしょうか? テキストを図的に示す技量がないため大変解りづらくて申し訳ないのですが、 良い方法をご存知の方はぜひお教えください。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

A4: =mod(int(sum(B1:B3)/10)+sum(A1:A3),10) 下の桁から繰り上がってくる値と自分の桁の合計の、上に繰り上 がっていく分を除外します。小学校の筆算そのままですね。 これで何桁でもコピーするだけ。

tanaka_san
質問者

お礼

なるほど! 言われてみればという感じでしてやられた気分です。(笑) ベストな回答を戴けたものと確信しますので締めさせていただきます。 ありがとうございました。

その他の回答 (4)

回答No.5

No.2,4です。 以下の式を用いれば正しく計算できると思います。 A21:=MOD(INT(SUMPRODUCT((10^(8-COLUMN($A$1:$H$1)))*$A$1:$H$20)/10^(8-COLUMN(A1))),10) H21までコピーしてください。

tanaka_san
質問者

お礼

締切後にわざわざすみません。 その後、20ptとさせていただいた方の式では、cafe_au_laitさんの 言われていたことと同じ「2桁の繰上り」の際に不具合が出ることが 判り、結局10ptとしてしまったchem_taroさん案で書類を作りました。 このように浅はかさを痛感していましたが、今回cafe_au_laitさんに ご提示いただいた式は正確かつシンプルで、配点をリセットさせて もらえるならこちらを20ptに切り替えたい心境です。 締切をもう少し待ってもよかっただろうと後悔しています。 お忙しい中、本当に良い回答を下さりありがとうございました。

回答No.4

No.2です。 2桁以上の繰り上がりなどがあるとうまく機能しませんでした。 下の回答は無視してください。

tanaka_san
質問者

お礼

貴重なお時間を割いていただいてすみません。 ありがとうございました。

回答No.2

筆算をするようなイメージでよろしいのでしょうか? H4:=MOD(SUM(H1:H3),10) G4:=MOD(SUM(G1:G3),10)+ROUNDDOWN(SUM(H1:H3)/10,0) G4をA4までコピーします。

  • chem_taro
  • ベストアンサー率32% (33/101)
回答No.1

ちょっとやることがうまくイメージできていないので外していたらごめんなさいですが、思うに、発想を転換して、計算は10進数でやるというのが一番簡単かなと思います。 A1~H1までに8桁の数字のそれぞれの桁が入っているとして、I1のセルにその数字を10進数で計算(=A1*10000000+B1*1000000+C1*100000+D1*10000+E1*1000+F1*100+G1*10+H1)しておきます。その上で不要なら非表示にしておきます。 同様にA2~H2、A3~H3・・・A20~H20もI2、I3・・・I20をつくっていきます。(さっきのI1をフィルハンドルでコピーすれば楽です。) 最後に合計をA21~H21にいれていくわけですが、まず、I21に「=SUM(I1:I20)」といれ、I1からI20までの合計を求めます。 つぎに、それぞれの答えの桁をいれていくわけですが、 A21には =MOD(INT($I21/10000000),10) B21には =MOD(INT($I21/1000000),10) C21には =MOD(INT($I21/100000),10) D21には =MOD(INT($I21/10000),10) E21には =MOD(INT($I21/1000),10) F21には =MOD(INT($I21/100),10) G21には =MOD(INT($I21/10),10) H21には =MOD($I21,10) といれればそれぞれの桁を取り出すことができるはずです。

tanaka_san
質問者

お礼

確かにこれで必要な値は取り出せますね。 3の方が言いたいことをよりシンプルにまとめて 下さっているので「次点」とさせていただきます。 ありがとうございました。

関連するQ&A

  • エクセル2003 表示の方法

    どうぞ宜しくお願いします 入力内容は、 1Eに2桁までの数字(0.1~99.9)、 1Fに4桁までの数字(1~9999)、 1Gに4桁までの数字(1~9999)、を入力します 1Hには、A~Dの英文字 ◆例を書きますので宜しくお願い思案す 1Eに、9と入力   1Fに、456と入力   1Gに、789と入力 1Hに、Aと入力しますと  1Bには、09と 1Cには、0456と 1Dには、0789と表示され 1Aには、0904560789Aと表示され 1Hには、09-0456-0789-Aと表示されるようにしたいのです pcあまり詳しくありません どうぞ宜しくお願いします

  • 単材積の求め方はどうすればよいですか。

    EXCELで単材積の求め方がうまくいきません。実際に試しているのは以下の通りです。 A1からH1まではタイトルです。 A2からC2までは寸法(mm)を入力します。最終的にH2に金額2450円を出したいのですが、どうしても2430円になります。 A1長さ(mm), B1 厚さ(mm), C1 幅(mm),D1数量,E1単材積, F1 材積,G1単価,H1金額 A2セル3000,B2セル36,C2セル45,D2セル5,E2セル 0.00486,F2セル 0.0243,G2セル 100000, H2セル2430 E2セルには=A2*B2*C2*0.000000001という関数を入れています。F2は=D2*E2という関数を入れました。H2セルには=F2*100000を入れました。 実際の単材積の計算上は0.00486の下5桁で取捨五入して0.0049として単価100000をかけると1本が490円となります。 数量が5本の場合、5 × 490 = 2450円となるようです。 しかしエクセル上ではE2を書式設定で数字の4桁に変更して0.0049と表示させても実際の計算は0.00486の数字を使用した計算になり結果的に 0.0243 × 100000 = 2430となってしまいます。 EXCEL上では、どのようにすればH2セルに2450円を表示させることができますか? よろしくお願いします。 なお、長さ、厚さ、幅はお客様の請求書にmm単位で表示させる必要があります。

  • 計算結果が合わない

    下記の計算をしています(計算式=ABC/F+G(D+E) 電卓及びexcelで計算すると、結果の3,683まではあっているのですが、 下記表の4行目の結果が、電卓では、9,684、Excelで計算すると、 どうしても8,507となってしまいます。 計算式が間違っているのでしょうか?? Excel計算式 =B21*C21*D21/G21+H21*(E21+F21) 何度、電卓で計算しても、9,684となってしまいます。 よろしくお願いいたします。 A B C D E F G 結果 2.64  1312.5  511 11.49  1.5  5407  0 327 27.6  1312.5  511 11.49  1.5  5407  20 3,683 23.76 1312.5  511 11.49  1.5  5407  428 9,684

  • エクセルの関数式について教えてください。お願いします。

    エクセルの関数式について教えてください。お願いします。   A B C D E F G H I J 1 9 6 1 3 4 7 8 2 5 10 2 6 4 9 3 8 7 1 5 10 2 3 1 3 -2 0 2 0 -4 1 1 -2 たとえばこのような表があります。 1の行にはランダムに1から10までの数字が入ります。 2の行にもランダムに1から10までの数字が入ります。 B1に6が入っています、A2にも同じ数字の6が入っています、 6はB1からA2に1つ上がっているので1 A1には9が入っています、C2にも9が入っています。 9はA1からC2に2つ下がっているので-2 D1には3が入っています、D2にも3が入っています。 3はD1からD2動いていないので0 といった具合に、1の行に入った数字が2の行の同じ数字を感知して その数字がどれだけ上がったのか、下がったのかを 3の行に表したいのですが、どのような関数を使ったらよいのでしょうか? 教えてください。お願いします。

  • エクセル2007で%の平均値を求めたいのですが、うまくできません。

    エクセル2007で%の平均値を求めたいのですが、うまくできません。 AVERAGEやIFをいろいろ組み合わせてみたのですが、どうしても分からないので教えてください。   A   B    C    D    E    F    G   H 1 目標  6.44%  4.50%  3.77%  5.15%  2.66%  2.79%  式を入れたいセル 2 実績  5.07%  6.00%  4.85%                 A2~G2の平均値 A1~G1は、=(F3/G6)みたいな数式が入っていて、%で表示されています。 B2~G2は、最初は空欄で毎月B、C、D、E、Fと一つずつ%が入っていきます。 上記で、H1のセルに、下記の様な結果を表示できる式を入れたいのですが、何かいい方法はないでしょうか? ・B2~G2が空白の時はB1~G1の平均値 ・B2にだけ数字が入っていてC2~G2が空白の時はB1の数字 ・B2~C2に数字が入っていてD2~G2が空白の時はB1~C1の平均値 ・B2~D2に数字が入っていてE2~G2が空白の時はB1~D1の平均値 ・B2~E2に数字が入っていてF2~G2が空白の時はB1~E1の平均値 ・B2~F2に数字が入っていてG2だけが空白の時はB1~F1の平均値 ・B2~G2全てに数字が入っている時はB1~G1の平均値 どうかよろしくお願いします。

  • EXCELの関数式(INT,MOD)で教えて下さい

    下図のようなEXCELの表があります。 金種計算で、1行目は1万円、5千円、千円・・・10円と入っており、 A2は計算したい金額(97810)を入れています。 B2セルの式=INT($A2/B1)、C2セルの式=INT(MOD($A2,B1)/C1)で、C2セルの式はD2~H2に複写しています。 EXCELで得た計算結果(2行目)は正しいと思うのですが、 D2,F2,H2の計算結果と、自分で計算した結果があいません。 ここを詳しく教えて頂けないでしょうか。 宜しくお願い致します! INT関数:整数部を返す MOD関数:剰余を返す  |  A  |  B |  C |  D |  E |  F |  G |  H | 1|   |10000| 5000| 1000| 500| 100|  50 |   10| 2|97810|   9|   1|   2|    1|   3|   0|   1| B2は、98710÷10000=9.7810→整数部を返すので「9」 C2は、97810÷10000=9.7810→剰余7810÷5000=1.562 →整数部を返すので「1」 D2は、97810÷5000=19.562→剰余562÷1000=0.562 →整数部を返すので「0」??? E2は、97810÷1000=97.810→剰余810÷500=1.62 →整数部を返すので「1」 F2は、97810÷500=195.62→剰余62÷100=0.62 →整数部を返すので「0」??? G2は、97810÷100=978.10→剰余10÷50=0.2 →整数部を返すので「0」 H2は、97810÷50=1956.2→剰余2÷10=0.2 →整数部を返すので「0」???

  • 小数点4桁での四捨五入がうまくいきません

    エクセルで次のような計算をさせます。 A2 に1.8、B2に0.075、C2に0.075、 D2に= A2*B2*C2 、E2に=roundup(D2,4) D2の計算結果は 0.010125 です。小数点第5桁目の値を参照して第4桁目で四捨五入したいのですが、roundupでは0.0102、rounddownでは0.0101です。 表示させたいのは0.0101です。この場合、rounddownを使えば問題ないのですが、逆にrounddownだと小数点以下4桁目の四捨五入がうまくいかない場合もあります。 例えば A3に2.7 B3に0.08、C3に0.08 があり、E3にすべての値を掛けた結果を表示させると0.01728となります。 =roundup(E3,4)では0.0173となり、rounddownでは0.0172となります。この場合はroundup関数の結果である0.0173が求める数値です。 A列、B列,C列に任意の数字が入り、E列に4桁目で四捨五入した正確な値を求めたいのですが、なにか良い方法はないでしょうか。 VBAを使っても構いません。ちなみにこれは木材の材積計算に使用する目的です。 よろしくお願いします。

  • エクセル:複数セルからの参照

    お世話になります。 A,B,C列にデータが入っています。 D,E,F列に参照のためのデータがあります。 A,B,C列はそれぞれD,E,F列に対応しています。 A,B,C列と同じ並びのデータが入っている行をD,E,F列から探し、その隣のG列の値をH列に返す。 D,E,F列の並びが重複する行はありません。 A,D列は場所の名前、B,C,E,F列には数字が入っている。 例) A1に事務室 B1に20 C1に3 が入っているとする。 D/E/F列が 事務室/20/3 の並びになっているのが10行目の場合、H1にG10のセルの値を返す。 この場合、H列にはどんな計算式を入れておけばよいのでしょうか? A,B,C列と同じ並びのデータがD,E,F列で見つからない場合は空白をH列に返す。 ちなみにD/E/F列が 事務室/20/3 の並びになっている行は10行目しかないです。 よろしくお願いします。

  • エクセル2007で%の平均値を求めたいのですが、うまくできません。

    エクセル2007で%の平均値を求めたいのですが、うまくできません。 先日下記の様な質問をさせて頂いたのですが、もう少し質問したいことがあったのに間違えて解決済にしてしまいました。 どなたか分かる方がいらっしゃいましたら教えてください。    A    B    C    D    E    F    G     H 1 目標  6.44%  4.50%  3.77%  5.15%  2.66%  2.79%  式を入れたいセル 2 実績  5.07%  6.00%  4.85%                 A2~G2の平均値 A1~G1は、=(F3/G6)みたいな数式が入っていて、%で表示されています。 B2~G2は、最初は空欄で毎月B、C、D、E、Fと一つずつ%が入っていきます。 上記で、H1のセルに、下記の様な結果を表示できる式を入れたいのですが、何かいい方法はないでしょうか? ・B2~G2が空白の時はB1~G1の平均値 ・B2にだけ数字が入っていてC2~G2が空白の時はB1の数字 ・B2~C2に数字が入っていてD2~G2が空白の時はB1~C1の平均値 ・B2~D2に数字が入っていてE2~G2が空白の時はB1~D1の平均値 ・B2~E2に数字が入っていてF2~G2が空白の時はB1~E1の平均値 ・B2~F2に数字が入っていてG2だけが空白の時はB1~F1の平均値 ・B2~G2全てに数字が入っている時はB1~G1の平均値 という質問に対して、 [H1]=AVERAGE(B1:INDEX(B1:G1,COUNT(B2:G2))) という式を教えて頂いたところ、うまくいきました。 半期分はこれでOKだったのですが、1年分だとHに半期の平均のセルが入るため、うまく表示できません。 ・B~Gが前期、Hが前期の平均 ・I~Nが後期、Oが後期の平均 さらに、Pに全期の平均を入れたい場合はどのようにしたらよいのでしょうか? [P1]=AVERAGE(B1:INDEX(B1:N1,COUNT(B2:G2,I2:N2))) にすると、Hのセルも入ってしまうため、後期に数字が入ると平均値の表示が1つずつずれてしまいます。 何回も申し訳ないのですが、どうぞよろしくお願いいたします。

  • エクセルにて複数セルの並び替え

    こんにちは、エクセルについて教えてください。列はA~Hまで、行は1~200行ほどに値が入っています。 例えばValueが以下のようだとします。 A1 B1 C1 D1 E1 F1 G1 H1 A2 B2 C2 D2 E2 F2 G2 H2 ... これらのValueを、別のSheetに以下のように並び替えたいのですが、 A1 B1 C1 D1 E1 F1 G1 H1 A2 B2 C2 D2 E2 F2 G2 H2 A3 B3 ...と、これがA200~H200の行分まで。なのでPaste後は800行になります。どうにかマクロか何かで簡単に 出来ないかと思い、どなたかご教授いただければと思います、よろしくお願いします!

専門家に質問してみよう