• ベストアンサー

Excelで特定の行の縦計

Excelで縦計を足したいのですが、2行おきとか3行おきの データを足したいのですが、どのようにすればいいのですか? データ量が多いので、一つ一つなんて指定出来ないんです。教えて下さい。 お願いします。

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

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

これは、配列数式という方法です。 数式を入力後、[Ctrl]+[Shift]+[Enter]を押してください。 数式の前後に{}が付きます。 (1)(偶数行)を足す =SUM(IF(MOD(ROW(A1:A7),2)=0,A1:A7,0)) 行を2で割った余りが0(偶数行)ならば足す この例では[A2+A4+A6]です    (奇数行)を足す場合は =SUM(IF(MOD(ROW(A1:A7),2)=1,A1:A7,0)) (2)2行おきに足す =SUM(IF(MOD(ROW(A1:A7),3)=0,A1:A7,0)) 3の倍数行を足す   (1)と同様[=0]を1,2に変更してください (2)3行おきに足す =SUM(IF(MOD(ROW(A1:A7),4)=0,A1:A7,0)) 4の倍数行を足す・・以下同文 ・配列数式について http://oshiete1.goo.ne.jp/kotaeru.php3?q=383250

GENGORO
質問者

お礼

ありがとうございました。ばっちり出来ました。 この手の数式とかって知らないと一生使わないで終っちゃいますよね。 まるで人間の潜在能力みたいですね。ほとんど使わないで日々生活してるなんて・・・(^-^;)

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (3)

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

「配列数式」というエクセルの仕組みで合計が出ます (A列)(B列) a 1 b 2 c 3 d 4 e 5 f 6 g 7 h 8 I 9 18-->B10 1,3,6,9行のB列の計数を加えるとして B10セルに答えを出すとして、B10セルに =SUM(IF(MOD(ROW(A1:A9),3)=0,B1:B9,""))といれ、 CTRL+SHIFTを押さえつつENTERキーを押す。 {=SUM(IF(MOD(ROW(A1:A9),3)=0,B1:B9,""))}と言う式になり 答えは18になる。 MOD(A1),3-->1<>0 ---> ""  MOD(A2),3-->2<>0 ---> ""  MOD(A3),3-->0=0 ---> B3  MOD(A4),3-->1<>0 ---> ""  MOD(A5),3-->2<>0 ---> ""  MOD(A6),3-->0=0 ---> B6  MOD(A7),3-->1=0 ---> ""  MOD(A8),3-->2<>0 ---> ""  MOD(A9),3-->0=0 ---> B9 sum(B3+B6+B9)で答えが求まる理屈です。 余分な中間結果の列を使いません。 回答を書いているうちに#3回答が出ましたが、説明の部分でも読んで使ってください。

GENGORO
質問者

お礼

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

全文を見る
すると、全ての回答が全文表示されます。
回答No.2

初めまして。あなた様のおやりになりたいことは、マクロを組めば、式を入れたりする手間を考えずに、コードをコピー&ペーストするだけで実行することができます。 もし私でよろしければ、コピー&ペーストするだけですぐにあなた様の思い通りに動作するするサンプルマクロを組んでみたいと思います。 ご希望の節は、貴方様のおやりになりたいことを具体的に詳しくお知らせ下さい。集計をしたいようなのですが、どの列を集計したいのかもお知らせ下さい。

全文を見る
すると、全ての回答が全文表示されます。
  • kiri_kiri
  • ベストアンサー率25% (13/51)
回答No.1

こんばんは。 どのようなデータかわかりませんが、手っ取り早いのは“SUMIF”関数かな? たとえば、Aの列に集計フラグのようなものを用意して、対象の行に“1”を入力します。集計したい列はC列とします。(データ件数は10件とします) で、合計を表示させたいセルに =SUMIF(A1:A10,1,C1:C10) と入力すると、A1~A10の中で“1”が入っている行のC列の値を足した合計を表示してくれます。 この形だと、“○行おき”などに縛られることはないので、便利だと思います。 がんばってください。

GENGORO
質問者

お礼

ご回答ありがとうございます。 でも、集計フラグ入れたくないんです。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Excelの行間隔について

    よろしくお願いします。 Excel2002です。 「折り返して全体を表示する」を使用し、1つのセル内に数行の文字を入力しています。 この時、行と行の間隔が文字の高さピッタリになっていて読みにくいのです。 「縦位置」を均等割付か両端揃えにして行の高さを高くすると行間隔が広がることはわかったのですが データの量が多く、また行によりセル内の行数がまちまちなので、各行で行の高さを調整するのは大変なのです。 何か良い方法があれば、教えてください。 お願いします。

  • エクセルで縦の行を自動選択する方法

    同じような質問があるのですが、どうも上手く行かないので質問させてください。 マクロのVBA?を使って自動選択したいのです。 具体的に言うとこうです。 横1行で一つのデータの括りになるので 例えばこんな感じで Range("B3:F3").Select 横の列はB3~F3まで選択し、 さらに行が増えた場合でも 縦は自動で選択されるようにしたいのです。 もしこう書けば Range("B3:F30").Select 縦の行も含め指定した範囲だけ選択されますが しかし、縦の行は自動選択(入力された最後のセルまで)したいので Range("B3:F3").Select + 縦が自動選択される記述 をご教示いただきたくご質問しました。 よろしくお願いします。

  • エクセルで行の数字が飛び飛び&青く表示されている

    エクセルを使って、アンケートの集計をしているところです。 いただいたエクセルをみると、なぜか一番左の行(縦に1,2,3,…とある行)の数字が飛び飛びになっています(100,105,107…のように)。しかも、その行の数字が青く表示されています。 きっと、抜けた行にもデータが入っていると思います。この抜けた数字の行を復活させたいのですが、どのようにしたらいいのでしょうか?

  • excelの横に続く表を縦に並び替える

    エクセルで横に50列ほどデータが入っています。 これを縦にa列に50行データを並べたいのですが 何か方法はあるでしょうか? マクロを組むしかないでしょうか? 教えて下さいませ。 宜しくお願い致します。

  • Excelで縦1行のデータを、横6行折り返しで表示させるには・・・

    Excelの計算式について質問です。    A列 1行目 あ 2行目 い 3行目 う 4行目 え 5行目 お 6行目 か 7行目 き 8行目 く 9行目 け 10行目 こ 11行目 さ 12行目 し   (以下続く) とA列の縦一列に並んでいるデータを 横6列(F列で折り返し)で並べていく計算式を探しています。↓     A列  B列  C列  D列  E列  F列 1行目あ   い   う   え   お    か 2行目き   く   け   こ   さ    し 3行目す  せ  そ   た  ち  つ 4行目て  と   な   に   ぬ  ね 何かいい計算式はないでしょうか。助けてください。

  • エクセルの行の高さがまちまち

    エクセルで書類を複数作っておりフォーマットを統一させたいのですが、行の高さを同じ数値に指定しても書類データのよってかなり違ってしまいます。どなたか対策ご存知の方、ご教示ください。よろしくお願いいたします。

  • エクセルについて

    エクセル2010の縦の行すうがありますが、MAX何行まであるのですか?単純に縦というか上から一番下かと、それでその縦の行は初期からふやすことはできますか?なんでこういうことを聞いているかというと他社のツールからデータをエクセルに送り込むときになにか縦の行が足りないと出て送り込むにも送り込めないからこの縦の行をふやせば送り込めるのかとみてのことでちなみに2010を使用していますが。

  • エクセルで行のみのデータを並び替え

    エクセル2000を使用しています。 LOT6データを整理しています。 横は1~43 縦は回数 各々出た所に○印を付け、縦の合計はCOUNTIFで計算しています。 この合計の数字を多いもの順で並び替えをしたいのですが、 列の並び替えは出来るのですが、行だけのの並び替えが出来ません。 どのように行えば出来るのか教えて頂ければ幸いです。 例)    A10 B10 C10 D10・・・・AQ10 行1  1  2  3  4 ・・・ 43  行6  3   1  4  2・・・・6 このような時、 AQ10 C10 A10 D10 B10  6  4  3  2  1  の様に行6のデータを並び替えをしたいのです。 宜しくお願い致します。   

  • エクセルの各シートをアクセスで縦に結合するには

    お世話になります。 1つのエクセルファイルに同じ書式のシートが複数あります。1行目がタイトル行で2行目以降にデータが入っています。 この各シートのA2セルからM列の最終行までの範囲のデータを順番にアクセスに取り込み一つのテーブルを作成したい。各シートのデータを縦に結合するイメージです。行数は各シートバラバラです。また各シートの列数はM列より多いが必要なのはM列までです。 最初のシートだけタイトルが必要なのでA1セルから取り込みます。 縦に並べるとエクセルの最大行数を超える可能性があるので一旦エクセル上で縦に並べることは考えません。 アクセスに取り込んだ際、主キーになる項目がないので左端に1からの連番の列を作ります。 以上のことをするためにはどのようにすれば良いのでしょうか?シートがかなりあるので自動化できればうれしいです。 よろしくお願いします。

  • エクセルのテーブルを縦に直したい

    添付画像のようにテーブル形式になっているデータを、関数かVBAを使い縦に並ぶように変換できないでしょうか。 やりたいデータは元データの行が何百行かあります。 よろしくお願いいたします。

専門家に質問してみよう