• ベストアンサー

「自分のセルより1行上の行番号」を求める方法

初歩的な質問で申し訳ありません。 あるプログラムからデータをExcelに吐き出しています。 SUM関数を使って値の合計を表示したいのですが、 行数が不明なため、SUM関数をうまく作れません。 A列|B列 ────── No1| 13 No2| 21 No3|  8 No4| 40     ~   ~ ────── 計 |SUM(B2 : B?)  ← ★ この★の部分の、「自分のセルより1行上の行番号」を求める方法を教えてください。

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

  • ベストアンサー
  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.1

プログラム的な話ですか? 「SUM関数をうまく作れない」の意味が解りませんでした、、、 一応、 =SUM(INDIRECT("B2:B"&ROW()-1)) でそれっぽくなりましたが、、、

kaji2006
質問者

お礼

遅くなり申し訳ありません。 教えていただいた方法でできました!! 有難うございます。

その他の回答 (3)

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

こんばんは。 >「自分のセルより1行上の行番号」を求める方法 簡単だけど、分かりにくいです。 SUM($B$2 : B*) 最初は、絶対参照の$B$2 で、範囲の終わりの B* で、ひとつ上のセルを、[相対参照]で指定します。 そうすれば、コピーしても、常に、ひとつ上を指しています。 これを、R1C1 方式でみると、R2C2:R[-1]C となっています。これは、A1方式で読むと、B2から、数式のあるセルのひとつ上のセル、という内容になります。 データの最後尾の次に数式を置いて、そのセルのひとつ上を指定する方法というのが、マクロのコードでは、時々、出てきます。

  • rin01
  • ベストアンサー率43% (33/76)
回答No.3

すみません~。。。 >kaji2006さんと変りませんが~。。 papayukaさんの 間違いでした。。。Rin

kaji2006
質問者

お礼

遅くなり申し訳ありません。 SUM($B$2 : $B$*) *には初期の行-1の数字 で、間の行が増えても、合計を実現することができました。 色々勉強になりました。 有難うございます!

  • rin01
  • ベストアンサー率43% (33/76)
回答No.2

こんばんは~♪ kaji2006さんと変りませんが~。。。 =SUM(B2:INDEX(B:B,ROW()-1)) でも、 オートサムΣで、出来ないんでしょうか? 。。。。Rin~♪♪

kaji2006
質問者

お礼

遅くなり申し訳ありません。 INDEXで位置を取るんですね。 基本的なことも知らずにお恥ずかしいです。。 有難うございます!

関連するQ&A