教えて!HELPDESK      Excel     Word      Outlook      Power Point      Windows

 

 

Excel2010「〇行ごと」「〇行おき」「〇行ずつ」の計算いろいろ

 

 

 

 

 


 

 

 


 

 

 

 


 

 

 

〇行ごとの計算は多々あります。パターンをいくつかご紹介します。


 

■ 3行ごとの数を合計したい 

N行ごとに表示する場合は、N÷Nで余剰が0なら…の条件を使います。3行ごとなら3の倍数を3で割ると除数が必ず0になり ます。(3÷3、6÷3、9÷3…は割り切れるので余り0)なので余剰が0なら〜の式を作成します。

数式(1) 結果(1) 数式(2) 意味 結果(2)
=row(a3)/3 1 =mod(row(a3),3) 3÷3の余剰 0
=row(a4)/3 1.33… =mod(row(a4),3) 4÷3の余剰 1
=row(a5)/3 1.66… =mod(row(a5),3) 5÷3の余剰 2
=row(a6)/3 2 =mod(row(a6),3) 6÷3の余剰 0

 

オートフィルでは0,1,2…を繰りかえす今回は人数は上(1,4,7…行目)なのでMOD(行番号,3)が1の数を合計

 

↓B列の人数のみを合計しましょう。

 

【解説】3行ごとなので、MOD関数で3を除数にすれば3の倍数は必ず0で、1,2,0…を繰り返す 。今回人数は3行のうち1番目の行(1,4,7…行目)なので必ず1になる。

{=SUM(IF(MOD(ROW(B:B),3)=1,B:B))}

 

※例えば3行ごと末行(3,6,9…)の数を合計するなら{=SUM(IF(MOD(ROW(B:B),3)=0,B:B))} となります。

■ 3行分ずつ合計したい

 

【解説】基点を3行ずつ移動し3行分ずつ の範囲を合計します。OFFSET関数でROW(A1)*3-3としてオートフィルすれば 1×3-3=0,2×3-3=3,3×3-3=6…と3の倍数で 基点を動かせます。

=SUM(OFFSET(基準セル,ROW(a1)*●-●,0,●,1)

3行ずつ合計する →  SUM(OFFSET(基準,row(a1)*3-3,0,3,1))

 

■ 3行分ずつ合計したい(合計が末尾)

3の倍数ごとに上セル3つを合計する。3の倍数かどうかは3で割って除数が0かどうかで判別できる。MOD(ROW(a3),3)=0

 

=IF(MOD(ROW(A3),3)=0,SUM(OFFSET(A3,0,0,-3,1)),"")

 

合計の最初のセル(B3)にRow(a3)÷3の除数が0なら、そのセルを起点として-3分を合計する

行番号を指定(a3)するので、データがどこから始まっても式は同じ(Offsetの基点が異なるだけ)

 

3行ごと連番を入れたい

 

3行ごとに連番なので、1,4,7,10行目に1,2,3,4…と入力したい場合です。3で割 ると数値は倍数ごとに連番になるので、3÷3=1 ,  6÷3=2 , 9÷3=3 … これを利用します。倍数以外は小数点になるので【小数点なら空白】と いう条件を作ります。整数は必ず1で割り切れます(=除数が0)が、小数は1で割ると余りがでるので(IF(MOD(○,1)=0,整数,小数点)とします。

 

IF(MOD(ROW(A3)/3,1)=0,ROW(A3)/3,"")

 

★小数点かどうかを判別…MOD(数値,1)=0なら整数

 

■ 3行ずつ連番を入れたい

 

3行ずつ3行単位で連番を振るなら、3の倍数が連番になるように3で割ります。(3÷3=1,6÷3=2,9÷3=3…)その他は小数点となるので、INTで整数にすればOK

 

=INT(ROW(A3)/3) でオートフィル (セルの場所はどこでもOK)

 

 

教えて!HELPDESK      Excel     Word      Outlook      Power Point      Windows