• ベストアンサー

エクセルでのセルに1桁だけの数字を入れての掛け算

123×9という掛け算をエクセルでさせたいと考えています。 但し、次の様にセルに入力して、結果を出したく考えています。 1行2列に1、1行3列に2、1行4列に3、2行4列に9と入力し、計算して、3行1列に1、3行2列に1、3行3列に0、3行4列に7と表示させる。 上記を実施する為の計算式を教えて頂きたく、よろしくお願いいたします。

  • tiz
  • お礼率79% (523/660)

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

  • ベストアンサー
  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.6

1行2列に =IF(ISERROR(VALUE(MID(RC1,LEN(RC1)+COLUMN()-7,1))),"",VALUE(MID(RC1,LEN(RC1)+COLUMN()-7,1))) として、 1行7列までフィルし、つづいて、縦に3行までフィルする。 1行1列に123と入力すると、1行5列、6列、7列に、1,2,3とはいる。 2行2列に987と入力すると、2行5列、6列、7列に、9,8,7とはいる。 3行1列に、 =R1C*R2C と、入力しておけば、3行2列、3列、4列、5列、6列,7列に、1、 2、 1、 4、 0、 1 と答えが入る。 3行1列に、121401と表示されるのがいやなら、文字色を白にでもしておけばいい。

tiz
質問者

お礼

回答をありがとうございました。

その他の回答 (8)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.9

例データ ーA列ーーーーB列ーーーC列ーーD列    ____ 1___ 2___ 3 ____________ 9 1___ 1___ 0___ 7 掛け算の答えは =SUMPRODUCT(B1:D1,{100,10,1})*D2 で出る。9も長桁なら同じようにすればよい。(第2行も{100,10,1}でSUMPRODUCTすればよい。) ーー 桁分離はA3に式 =MID(SUMPRODUCT($B$1:$D$1,{100,10,1})*$D$2,COLUMN(),1)*1 と入れてD3まで式を複写すればよい。

tiz
質問者

お礼

回答をありがとうございました。

回答No.8

7名の方が回答しているのに、返答がないのは、回答の内容を理解できないと解釈して、より簡単な関数を使用する方法を伝授します。 各セルに一発で答えを入れる方法は、どうしても数種類の関数の組み合わせを必要とします。 エクセルには、通常余剰セルが多くあります。 この余剰セルを使って少しづつ解答に近づけて行けば、1つのセルには簡単な関数ですむので、理解しやすく、また間違いも少なくなります。 使用するセルは、質問の通りおよび右の方に少しのセルを使います。 桁数が増える場合は、各セルを適宜右方向にずらしてください。 新しく増えたセルに入る数式(関数)は、例を見て推測してください。 文字列を使っての解決方法が一番簡単です。 “A1”表記で書きます。 まず、筆算のように“G1”セルに“123”、“G2”セルに“9”を入れ、“G3”セルに“=G1*G2”の式を入れます。  各セルの表示は、“123”,“9”,“1107”となります。 これらの値を1桁づつ分解して求めるセルに入れます。 答えの欄が4桁なので、G列の隣のH列に各数値を4桁の文字列として格納します。 方法は、 “H1”セルに“=RIGHT("   " & G1,4)”を書き込み、下方にドラグしてコピーします。 "   "の中に入るスペースの数は3つです。 これで、 “H2”セルに“=RIGHT("   " & G2,4)”、“H3”セルに“=RIGHT("   " & G3,4)”が入りました。 次に、“A1”セルに“=LEFT(H1,1)”、“B1”セルに“=MID(H1,2,1)”、“C1”セルに“=MID(H1,3,1)”、“D1”セルに“=RIGHT(H1,1)”を書き込みます。 A1~D1に空欄、1、2、3が表示されます。 A1~D1を選択し、下方にドラグコピーをします。 コピー後の各セルの数式は自分で確かめてください。 ABCD  123    9 1107 と表示され、目的が達成した。

tiz
質問者

お礼

回答をありがとうございました。

  • maron--5
  • ベストアンサー率36% (321/877)
回答No.7

◆こういうことでしょうか? ___A__B__C__D__E 1______1__2__3__9 2 3__1__1__0__7 A3=LEFT(RIGHT(" "&($B$1&$C$1&$D$1)*$E$1,5-COLUMN(A1))) ★右にコピー

tiz
質問者

お礼

回答をありがとうございました。

noname#204879
noname#204879
回答No.5

》 1行2列に1、1行3列に2、1行4列に3、2行4列に9と入力し、計算して、 》 3行1列に1、3行2列に1、3行3列に0、3行4列に7と表示させる。 Excel では、上のことを セル B1 に 1、C1 に 2、D1 に 3、E1 に 9、    A3 に 1、B3 に 1、C3 に 0、D3 に 7 などと説明するのが一般的なのですが、上のように表現されたのには何か特別な理由があるのでしょうか?(素朴な疑問です)

tiz
質問者

お礼

回答をありがとうございました。 単に言葉を知らなかったまでですが、勉強になりました。

noname#70958
noname#70958
回答No.4

被乗数,乗数,積がいずれも4桁以内という前提で、 A3セルを  =TRIM(LEFT(RIGHT("   "&($A1&$B1&$C1&$D1)*($A2&$B2&$C2&$D2),5-COLUMN()),1)) として右方にフィルすればご要望のように動作するかと思います。 ※"   "は全角スペースを3つ連ねています。  連ねる数は、積を表示する部分の列数マイナス1個です。    半角でも構わないのですが、このサイトの仕様上、  半角スペースを連ねることができないので全角を使っています。 ※5-COLUMN()の5は、下一桁目を表示するセルの列番号プラス1です。 ご参考まで。

tiz
質問者

お礼

回答をありがとうございました。

回答No.3

こんにちは 3桁同士の計算として999×999は998,001なので 6桁の答えになるように作ってみました。 また、私もANo.1様と同じようにLEFT関数を最初は使ってみましたが、 90×9のようなとき810にならなければいけないのですが、 8810となって、1000の桁が8を拾ってしまったので次のよう にしてみました。 まず。 1行目、2行目のA、B、Cは空白にして 計算する数値を入れる場所をD、E、F列に移します。 1、2、3 = D1、E1、F1     9 = F2 式が複雑になるのでF3にANo.1様と同じように =(D1&E1&F1)*(D2&E2&F2) と入力します。 次にA列から順に A4 =IF(ISERROR(MID(D3,LEN(D3)-5,1)),"",VALUE(MID(D3,LEN(D3)-5,1))) B4 =IF(ISERROR(MID(D3,LEN(D3)-4,1)),"",VALUE(MID(D3,LEN(D3)-4,1))) C4 =IF(ISERROR(MID(D3,LEN(D3)-3,1)),"",VALUE(MID(D3,LEN(D3)-3,1))) D4 =IF(ISERROR(MID(D3,LEN(D3)-2,1)),"",VALUE(MID(D3,LEN(D3)-2,1))) E4 =IF(ISERROR(MID(D3,LEN(D3)-1,1)),"",VALUE(MID(D3,LEN(D3)-1,1))) F4 =IF(ISERROR(MID(D3,LEN(D3),1)),"",VALUE(MID(D3,LEN(D3),1))) と入力します。 答えの文字列長から、1の桁は右端なのでそのまま、10の桁は 文字列長-1の場所なのでMID(D3,LEN(D3)-1というようにしてみました。 F3の答えは目障りでしたらグループ化して閉じちゃってください。 とりあえず、これで999×999の計算結果が出せると思います。 試してみてください。 ご参考まで

tiz
質問者

お礼

回答をありがとうございました。

  • masah43
  • ベストアンサー率42% (3/7)
回答No.2

計算する桁数が書かれてないので仮定した上で例を出します。 (条件)  ・3桁×1桁に限定  ・3行5列(E3)セルを作業用に使う (例) [E3]=CONCATENATE(B1,C1,D1)*D2 [A3]=IF(LEN(E3)>3,MID(E3,LEN(E3)-3,1),"") [B3]=MID(E3,LEN(E3)-2,1) [C3]=MID(E3,LEN(E3)-1,1) [D3]=MID(E3,LEN(E3),1) E3にいったん答えを作り、各セルに1桁ずつ該当する桁を当てはめています。答えが3桁の場合と4桁の場合があるので3桁の場合A3(千の位)は空白になるようにしています。 作業用セルが使えないならばE3の式をA3~D3の式中のE3の部分に埋め込んでください。

tiz
質問者

お礼

回答をありがとうございました。

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.1

  A  B  C  D  E 1   1  2  3  2         9 3 式が長くなるので、取り合えず E3セルに  =(B1&C1&D1)*(B2&C2&D2)  で答えになると思います。 D3セル =RIGHT(E3,1) C3セル =LEFT(RIGHT(E3,2),1) B3セル =LEFT(RIGHT(E3,3),1) A3セル =LEFT(RIGHT(E3,4),1) でいけると思います。E3セル省略するなら、E3の部分を(B1&C1&D1)*(B2&C2&D2)と入れ替えて作ってください。

tiz
質問者

お礼

回答をありがとうございました。

関連するQ&A

  • エクセルで9桁の計算をするには?

    エクセルのセルどうしの掛け算で 111111111*111111111 の計算をすると 12345678987654300 となってしまいます。 どうしたら計算結果の全ての桁を 正しく表示させることができるでしょうか?

  • エクセルでセルの結合について

    Excel2000を使用してます。 A列B列C列に入力した文字をD列に全て表示させたく、 下記のようにしました。   A列  B列  C列   D列     あ   い    う    あいう(計算式を=A1&B1&C1)   か   き    く    かきく(計算式を=A2&B2&C2)   上記のように、計算式を入れて希望通りの文字表示は 出来るんですが、それをメモ帳などにペーストすると "あいう" "かきく" のように"が入ってしまいます。 置換によって取ろうとしますが、エクセル上では該当がありませんとなります。 メモ帳に一旦ペーストして置換すると、”は取れますが、 横列も長い為エクセルにペーストし直すと、一つのセルに入らず、 複数の行に分かれてしまいます。 ””が入らずに、一つのセルに結合の値を出すには どうしたらよいのでしょうか?

  • エクセルで足し算と掛算を混ぜ合わせる式はどう入力すれば良いでしょうか?

    エクセルで足し算と掛算を組み合わせた結果を希望のセルに出したいのですが、どのような計算式を入力すれば良いでしょうか? (F5+G5)+({D5+E5}×B70)= の結果を求めたいので、計算結果を表示させたいセルに以下のように 入力しましたがエラーでした。 =SUM(=SUM{F5:G5}):(=SUM{D5:E5}*B70) どのように入力するのが正解でしょうか?

  • ランダムな数字の掛け算

    こんなこと出来るのか教えてください。例えばA列のセルに5000行位の数字データがあるとします。そのデータをB列の同じ行に1.001~1.1の範囲でランダムな数字の掛け算にしたいのです。 何かよい方法があればお教えください。よろしくお願いします。

  • エクセルの掛け算

    当方、エクセル初心者です。色々と調べてみたのですが、望む回答を得られませんでした。宜しくお願いします。 セルC1にA1・B1セルの積を求めるには、=A1*B1 となります。 この掛け算を =A2*B2(C3の答え) =A3*B3(C3の答え) ・・・続く・・と何十行にも渡る掛け算を、一度で設定する方法はどのようにしたらいいのでしょうか? 一度に複数の列、行の合計(足し算)を求めるには、合計範囲を選択(ドラッグ)して、オートSUMボタンをクリックすると、一発で合計値を求める事が出来ますが、掛け算の場合にはこういった操作は出来ないのでしょうか?

  • 1)A列 A4からA55まで、数字のデータが入ってるセルと、入ってない

    1)A列 A4からA55まで、数字のデータが入ってるセルと、入ってないセルがあります。 2)B列もA列同様、B4からB55まで、数字のデータが入ってるセルと、入ってないセルがあります。(データの入ってる行は、A列で入っていれば、B列の同じ行に入っています) 3)A列とB列のデータの入っている行を順番に4から55行まで、掛け算をして(例えば、A5*B5)、その4から55行まで合計を、H2に入っている、ほかの合計の数値で、割り算をする計算式をK2のセルに、一つにまとめて入れ、計算結果を表示したいのです。 検索で参考例を探したのですが、見当たらなかったので宜しくお願いいたします。

  • エクセルのかけ算について

    エクセルの計算式について質問したいことがあります。よろしく御願いします。かけ算なのですがたとえばA1を単価、B1を個数、C1を小計とした場合通常はC1に=A1*B1と計算式を入れればいいのですが今回の質問はB1のセルに何も入力ない場合はC1に単価をそのまま表示させ、B1の単価に入力した場合のみ計算するようにしたいのです。例としてA1を300、B1は何も入力なし、C1は300と表示し、B1にたとえば3と入力したときにC1は900と計算されるようにしたいのです。このようなことは可能でしょうか?教えてください。

  • excelで数字列から4桁ずつ分けて表示させたい

    excelを使って次のようなことをしたいのですが、うまくいきません。 あるセルに 0123456789123456 と16桁の数字列を入力すると 別の表の4つのセルにそれぞれ 0123 4567 8912 3456 と表示される。 字数が15桁を超えるとexcelが認識してくれないのでそれにも困っています。 どうすればよいのかご教授よろしくお願いします。。

  • エクセルについて教えてください

    エクセルについて教えてください 計算式を入力してつぎからも同じ計算式をコピーしたかったので 1行目のセルの右下に+マークを表示して 左クリック2回しました いつもならその数値にみあった計算結果が 全部の行に表示されるのに 1行目の計算結果と同じになりました どうしてかわからないので教えてください。

  • エクセルシートのセルに3桁と4桁の数字を・・

    エクセルシートのセルに3桁と4桁の数字を入れたいのですが、 000とか、 001 とか、 0850 などです。 現在、 0とか 1 とか 850 になっています。 おそらく、数字情報のデータになっていると思います。 それぞれ、0で始まる3桁、4桁の文字列にしたいのですが、 よろしくお願いします。行数は30000行ほどあります。

専門家に質問してみよう