• ベストアンサー

エクセルの数式が分かる方教えて下さい。

エクセル2007を使っています。 私は、IFやCOUNTなど基本的な数式は使える程度のレベルです。 今、『1列とびの集計』をしたいのですが、その数式が分からずに困っています。 例えば、5行目のA列(A5)、C列(C5)、E列(E5)、G列(G5)に入力してある数値を合計したい場合、今はA5+C5+E5+G5(又はSUM(A5,C5,E5,G5))と入力しています。 これが4~5個なら良いのですが30個位あるとかなりな手間で、作業としてもかなり無駄な事をしているようでどうも気になります。 こういう集計をすることも多いので、いつもイライラしながらやっております。 エクセルのヘルプでもかなり探したのですが分かりませんでした。 どなたか簡単に集計できる数式をご存知の方はおられませんでしょうか? (11月4日まで所用でパソコンが見られませんので、折角ご回答いただけてもお礼などはその後になりますが、よろしくお願いします。)

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

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

列番号が奇数であるかどうかを判断する必要がありますが、ひとつの式でといわれると 配列関数を使用することになります。 もし、配列関数で集計して、式を下へ沢山コピィされるようであれば、急にパソコンが遅くなります。 簡単でわかりやすい方法で、作業用の行を使用します。 1行目のA1セルに =MOD(COLUMN(),2) といれて右へコピィしてみてください。 答えは 0 1 と交互に出てくると思います。後は SUIMIF関数がつかえます。 =SUMIF(A1:X1,1,A2:X2) とかになります。 1行目が見苦しければ非表示にします。

RSKQ8B2C
質問者

お礼

hallo-2007さんもすぐにご回答頂いていて有難うございます! お陰で=MOD(COLUMN(),2)がどういう事をする関数か分かりました。また、SUMIF関数が使える事に気付いたのと、それ以上に一定間隔ではなく「任意の列の数字を合計することが出来る」と言う事に気付いたのが非常に有り難いです! hallo-2007さんのご回答からも応用の幅が広がりました。 本当に有難うございました。

その他の回答 (2)

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

こんにちは。 すでに回答が出ていますが、SUMPRODUCT 関数を使って =SUMPRODUCT((A5:Z5)*MOD(COLUMN(A1:Z1),2))   または、 =SUMPRODUCT((A5:Z5)*(MOD(COLUMN(A1:Z1),2)=1)) A5.C5,E5,G5......とZまで B5.D5,F5,H5というなら、 =SUMPRODUCT((A5:Z5)*MOD(COLUMN(B1:AA1),2))   または、 =SUMPRODUCT((A5:Z5)*(MOD(COLUMN(A1:Z1),2)=0)) 横の場合は、COLUMNを使い、縦の場合は、ROWを使います。計算される行・列の長さと、判定するための、COLUMN,ROWの範囲の長さは同じにしないとエラーが発生します。

RSKQ8B2C
質問者

お礼

Wendy02さんもすぐにご回答頂いて有難うございます! 皆さんのを同時に読ませて頂いたので本当に分かりやすく、有り難く思います。 Wendy02さんが横と縦(COLUMNとROW)の使い分け方を書いて頂いていたので、1番目の方の数式を横(列)にする事が出来ました。また、配列関数を使わずに(2番目の方のご解答からすると、配列関数はあまり多く使うと重そうなので)出来る方法も分かりました。 3人の方のご解答を読ませて頂き、もっと早く質問すれば良かったと思いました。 ご解答頂き本当に有難うございました。

  • xls88
  • ベストアンサー率56% (669/1189)
回答No.1

[XL2002] n 行おきの合計を算出する方法 http://support.microsoft.com/kb/402181/ja?spid=1743&sid=1052 ↑対象が行になっていますが、列に置き換えれば出来ると思います。

RSKQ8B2C
質問者

お礼

早速ご回答を頂いていてビックリしました!有難うございました! 私が所用でパソコンが見られなかったため、3名の方のご回答を同時に読ませて頂く事ができ、より一層分かりやすいものになりました。 xls88さんから教えて頂いたサポートオンラインでは、1行おきだけではなく2行おき、3行おきの方法や「配列関数」と言うのが普通の関数とは違う(Shift+Ctrl+Enterで確定させなければいけない)と言う事まで学ぶことができ、応用の範囲がかなり広がりました。 本当に有難うございました。

関連するQ&A

  • エクセル 数式

    Excelについて。 あるセルA1の設定されている数式(=SUM(E:E)など)を、 B1にコピーする方法は、ありますでしょうか? ※A1に入力されている数式をコピー貼り付けではない方法を探しています。 B1に、=A1とすると、=SUM(E:E)の計算結果が入力されてしまいます。 ゴール(表示される値)は同じですが。コピー貼り付けしか方法はないでしょうか。 お手数ですが、よろしくお願いします。 エクセル2007以上 VBAなら可能ですか?

  • エクセルの集計を簡単にするには?

    エクセルの表で集計対象が1列とびで集計しなくてはいけないのです。 =A1+C1+E1・・・のように、集計しているのですが、もっと簡単に出来る方法・関数などありますか? よろしくお願いします。

  • エクセル数式について

    エクセル初心者です 2つ質問させてください。 質問 1  表計算をしています エクセルの数式をドラッグしてコピーすると =SUM(H18*C18) =SUM(H19*C19) =SUM(H20*C20) となりますが たとえば =SUM(H18*C18) =SUM(H18*C19) =SUM(H18*C20) 一つのセルを固定して計算させる このようなコピーの方法は可能でしょうか? 質問 2 データの入力規則を設定するとき 入力値の種類→ユーザー設定→数式 この(数式)の部分を別のSheetのセルを範囲指定して 設定する方法は可能でしょうか? 分かりにくくてすみませんが お知恵を貸してください。 よろしくお願い致します

  • エクセルの数式で日付=日付がTRUEにならない

    エクセル2010のA列に日付、B列に時刻、C列にある数字が入っており、D列で指定した日付のC列の数字を足したいとします。  A       B   C      D     E 2014/3/4   0:00   1   2014/3/4    2014/3/4   1:00   0   2014/3/5 2014/3/4   2:00   1   2014/3/6   ・      ・    ・      ・   ・      ・    ・      ・   ・      ・    ・      ・ 2014/3/4  23:00   0 2014/3/5   0:00   1   ・      ・    ・      ・   ・      ・    ・      ・   ・      ・    ・      ・ この時、E列には数式「=sumif($A$:$A$,D1,$C:$C)」を入れれば、求めたい数字が出てくるはずです。 ここで質問なんですが、このときにA列に入っている日付とD列に入っている日付が同じなのに、認識されずにsumが行われない時があります。 これは何が原因と考えられますか? データの入力をwindowsでやったりMacでやったりしたことも原因の一つとも考えられますが、その場合に起こり得る問題は何があるでしょうか?

  • 【Excel VBA】データを集計する数式を入力するマクロ

    Excel2003を使用しています。   A列   B列   C列   D列   E列   F列 1      9/1                    20000 2      9/2              1000 3      9/10              5000 : : 10           9月計        ※1    ※2    11 12 13     10/1                   10000 14     10/10             2000 15     10/14                   4000 : : 20           10月計       ※3    ※4 上記のデータでいうと、 ※1(E10セル) =SUM(E1:E9) ※2(F10セル) =SUM(F1:F9) ※3(E20セル) =SUM(E13:E19) ※4(F20セル) =SUM(F13:F19) という内容の数式を入力するマクロを作成したく、数式を入力したいセルをアクティブにして、ボタン等に登録したマクロを実行すると数式が入力されるようにしたいと考えていますが、その際、集計範囲の最下行は、アクティブセルの1行上までになりますが、最上行をどのようにして取得すればよいかがわかりません。 (実際のデータは、もっと行数も入力されているデータ数も多いです) また、他にもこんな方法があるとか、こうしたほうが簡単とかあれば、教えていただけると勉強にもなりますので助かります。 うまく説明できなくて申し訳ありませんが、よろしくお願いします。

  • エクセルの数式の使い方について

    Excelデータの取りまとめ方についてご教授ください。 説明下手なので、何がしたいのか箇条書きします。 画像データも添付していますので、ご覧くだされば幸いです。 (1)1つのブックに各市のデータを各シート毎に入力してあり、そのデータを参照したとりまとめのシートを作りたい。 (2)列の項目は全市同じだが、行の項目や数がそれぞれの市で違う。 (3)実際は30行×100列くらいあるので、なるべく入力がコピペでできるか最低限の労力でやりたい。 (4)たとえば甲市の”A・X”の値をSheet4の”A・甲市”に表示したいときは、 「Sheet1の行項目のなかに、Sheet4の行項目と同じ"A"があれば、Sheet1の"A・X"の値を入力、なければ0」 のような数式を使えばいいのかと思ったが、このような数式があるのだろうか? 経緯として、これまで各市のデータをそれぞれ1ファイルずつで集めて、30ファイルのエクセルデータにひとつひとつ手で入力していたのですが、 開いてはぽちぽち入力して閉じて、開いてはぽちぽち入力して閉じて…の繰り返しで毎回頭が発狂しそうでした。 エクセルなんだからもっと手間を省く方法があるのではないかと、1つのブックにシートごとにとりまとめてみたまではよかったのですが、 何しろ初心者なもので、IFやVLOOKUP、フィルターなどを調べて使ってみてもうまくいかず…。 複数ブック×複数ブックを1つのブックで集計するというのが無謀な挑戦なのかもしれませんが、 少しでも手間を省くような方法がありましたら教えていただけると幸いです。

  • エクセルで数式が文字列になってしまう

     こんにちは。教えて下さい。  あるセルに対して、例えば「=sum(a1:c1)」のような式を入力すると、結果が表示されずに「=sum(a1:c1)」がそのまま表示されます。  セルの属性に関係あるのかと思って、他の数式の入っているセルをそのままコピー(このときは数式になっている)、数式を書き換えたのですが、書き換えたとたん文字列になってしまいます。セルの書式で「標準」を指定しても変わりません。  どうすればいいのでしょう。  よろしくお願いいたします。

  • エクセルの数式に詳しい方にお尋ねします。

    交差する条件に合った複数の数値の合計をだすのに何か良い数式が ないものかと思い、質問させて頂きました。 エクセルに詳しい方にご回答いただければ幸いです。 よろしくお願いします。   d f g total h t z total a 1 2 3  6  1 1 1  3 b 1 2 4  7  1 1 2  4 c 1 2 3  6  1 1 1  3 このような表があり、aの複数のTOTALの値を合計した数値を出したいです。 今現在、SUM(VLOOKUP(…))でTOTAL部分の行数値を入力していけば できなくはないのですが、なんせTOTALの数が多いのでもっと簡単に 交差する条件の値を引き出す関数があれば、と思います。

  • エクセル 数式

    エクセル初心者です。 今、エクセル2007で下画像のような表を作成しました。 左のA列に金額を入れていますが、その金額の 百の位を四捨五入して、さらに、千円未満は 表示しないような数式をC列につくりたいです。 C列にどんな数式をいれればいいのでしょうか。 お願いします。

  • Excel 配列数式

    Excelにて日付の2列x数行からなる表があります。 A列  B列 1 2008/2/1 0:00 2008/2/2 12:00 2 2008/3/1 0:00 2008/3/3 00:00 .. 集計セル: A列とB列を比較して、24時間以内の誤差である行数をカウントした結果を 集計セルに入力したいのですがどのようにしたら良いでしょうか? B列からA列を引いて-1以上1以下の場合を真として、その結果をカウントして 集計セルに叩き込めばよいと思いますが、思うようにできません。。 配列数式を使えば出来そうな気がしますが思ったような結果が得られ ません。 よろしくお願いします。

専門家に質問してみよう