• ベストアンサー

Excel2000(エクセル)で一列飛ばしで簡単に計算出来る数式

こんにちは。いつもお世話になっております。 早速ですが下記に質問内容を記載しますので、どなたかご存知の方、いらっしゃいましたらご教授願います<(_ _)> 【Sheetの構成】 会社CD(A列) 会社名(B列) 回答済1(C列) 未回答1(D列) 回答済2(E列) 未回答2(F列) … 回答済50(CW) 未回答50(CW) で、データは2行目~500行目まで入っています。 ◆ご質問◆ 1)それぞれ一行ずつ(会社別)の回答済の合計値・未回答の合計値を出したい場合、 =C2+E2+G2+I2 ~中略~ CW2  なんて数式を入れるのは気が遠くなります^^; 何か他の方法で簡単に一列飛ばしの合計値を算出できる計算式はありますでしょうか。

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

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

No.1 の方の回答の補足になりますが、  =SUMIF($C$1:$CW$1,"回答済*",C2:CW2) のように「*」をつけたほうがよいと思います。

choko_late
質問者

お礼

こんにちは。今、会社でやってみました。OKですぅ~♪有難うございました。こんなに簡単に出来るだなんて。。。関数を習得していると無敵ですね(笑) 私ももっともっと勉強しなくては。。。。

choko_late
質問者

補足

おはようございます。早速のご回答、有難うございました。 本日、業務中にご教授いただいたことをやってみます。お礼は改めて週末までには…。 ひとまずお礼まで。有難うございました<(_ _)>

その他の回答 (4)

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

使わない行を1つ確保します。仮に第1行目とします。 A1に1、B1に0を入れます。 A1:B1を範囲指定してコピーします。 C1:L1を範囲指定して貼り付けます。 すると1,0,1,0、・・・が入ります。 たとえばM4に=SUMPRODUCT((A1:L1)*(A4:L4)) と入れると1列おきの数値の和が求まります。 後は縦方向に式を複写します。 このやり方で、3列おきも、不整形パターンも思いのままです。

choko_late
質問者

お礼

早速のご回答、有難うございました。 ただ…やってみたのですがどうもうまくいかず、(私の読解力が無い所為^^;)断念してしまいました。 でも時間のある時に学習したいと思っています。 「3列おきも、不整形パターンも思いのまま…」というのが魅力ですから(笑)

choko_late
質問者

補足

おはようございます。早速のご回答、有難うございました。 本日、業務中にご教授いただいたことをやってみます。お礼は改めて週末までには…。 ひとまずお礼まで。有難うございました<(_ _)>

回答No.4

私がよく使うのは、別のシートにMOD関数で列位置÷2の 余りを判断し、例えば偶数列ならその値を抜き出して =IF(MOD(COLUMN(Sheet2!B2),2)=0,Sheet1!B2,"") 元のシートでその値を =SUM(Sheet2!B2:I3) のように合計するやり方です。

choko_late
質問者

お礼

こんにちは。早速のご教授、有難うございました。 No.2さんがお書きになったMODやCOLUMNが出てきましたね♪ 色々な関数を用いて作業が出来るみたいなのですが、何故、こんなにみなさん、いとも簡単に出来てしまうのか…尊敬しちゃうと同時にどうやって勉強すれば良いのだろうと思ってしまいます^^;

choko_late
質問者

補足

おはようございます。早速のご回答、有難うございました。 本日、業務中にご教授いただいたことをやってみます。お礼は改めて週末までには…。 ひとまずお礼まで。有難うございました<(_ _)>

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

よく読んでいないのですが、(^^; >=C2+E2+G2+I2 ~中略~ CW2  は、 =SUMPRODUCT((MOD(COLUMN($C$1:$CW$1),2)=1)*($C2:$CW2)) に置き換えることが出来ますね。 なお、 COLUMN($C$1:$CW$1) の中は、1 行目でも、2行目でも行については関係がありません。

choko_late
質問者

お礼

今、試してみました。結果ですが回答済合計は問題ありませんでしたが、未回答合計はダメでした^^; 状況ですが…その前に質問で一部、間違えていたところがありますので訂正させて頂きます。   ×質問時のセル位置→回答済50(CW) 未回答50(CW)   ○正しいセル位置 →回答済50(CW) 未回答50(CX) ★最後の“未回答50”は[CW列]では無く[CX列]です。そして、それぞれの集計を表示する場所は 回答済合計(CY列) 未回答合計(CZ列) としております。データが入っている行は質問時の2~500行までで間違いありません。   回答済合計を入れている列はCY列(CY2~CY500)で、ここに教えて頂いた =SUMPRODUCT((MOD(COLUMN($C$1:$CX$1),2)=1)*($C2:$CX2)) =SUMPRODUCT((MOD(COLUMN($C$1:$CX$1),2)=1)*($C3:$CX3)) ↓ =SUMPRODUCT((MOD(COLUMN($C$1:$CX$1),2)=1)*($C500:$CX500)) と入れまして問題なく解決できました。有難うございます<(_ _)> ただ、その隣のCZ列に未回答合計を出したいのですが、式の意味を調べてみたのですが理解できなかったので仕方なく =SUMPRODUCT((MOD(COLUMN($C$1:$CX$1),2)=2)*($C2:$CX2)) =SUMPRODUCT((MOD(COLUMN($C$1:$CX$1),1)=1)*($C2:$CX2)) =SUMPRODUCT((MOD(COLUMN($C$1:$CX$1),1)=2)*($C2:$CX2)) と一部の数字を買えてやってみたのですがダメでした^^; 未回答合計(CZ2~CZ500)にはどのような式を入れれば宜しいのでしょうか。お手すきでしたら恐縮なのですが是非、ご教授頂けましたら大変助かります。

choko_late
質問者

補足

おはようございます。早速のご回答、有難うございました。 本日、業務中にご教授いただいたことをやってみます。お礼は改めて週末までには…。 ひとまずお礼まで。有難うございました<(_ _)>

noname#109516
noname#109516
回答No.1

SUMIF関数が使えそうです。  =SUMIF("$C$1:$CW$1",""回答済","C2:CW2")  =SUMIF("$C$1:$CW$1",""未答済","C2:CW2") これを500行コピーすれば出来るはず。 詳しくはヘルプを参照下さい。

choko_late
質問者

お礼

ご回答、有難うございました。 お教え頂きましたとおりに式を入れてみたらエラーになってしまったのですが、No3.の方の投稿で大丈夫でした!全くホント関数って苦手で…^^; 有難うございました!助かりました。

choko_late
質問者

補足

おはようございます。早速のご回答、有難うございました。 本日、業務中にご教授いただいたことをやってみます。お礼は改めて週末までには…。 ひとまずお礼まで。有難うございました<(_ _)>

関連するQ&A