目次

概要

ここではSUM関数とCOUNTIFS関数を例に絶対参照と相対参照の利用について紹介します

SUM関数については該当列の同じ行までの合計を求めます
ただ、こちらは絶対参照や相対参照を利用しなくてもできる方法があるため、そちらも紹介します

COUNTIFS関数についてはVBAを組む際に配列番号を確認するのですが、そちらで使用しているものを紹介します
VBAには文字列や数値といった型があり、それを配列というものに格納(代入)します
配列を管理するのに覚えきれないため、Excelで管理しています

完成版

Excelの見本は下記をクリック
noteへ
※2026/02/25AM7:00に公開されます

相対参照・絶対参照・複合参照とは

相対参照

「$」マークがつきません
コピーしたときに行・列のどちらも参照が変わります

絶対参照

「$」マークがつきます
コピーしたときに行・列のどちらも参照が変わりません

複合参照

行または列のどちらかに「$」マークがつきます
コピーしたときに「$」のついていない方の参照が変わります

SUM関数での利用

下記のようにデータがあります

売上総計額の欄に最初の行からその行までの合計を求めたいです
そのときに利用するのが絶対参照と相対参照の利用です
セルC2(上記赤枠)に下記を入力しオートフィルでコピーすることで最初の行からその行までの合計が求められます
=SUM($B$2:B2)

「=SUM($B$2:B2)」と入力するには、下記を入力し、前のB2部分をマウスでドラッグ後、F4キーを押すことで入力ができます
=SUM(B2:B2)

SUM関数を利用しない方法


まずはセルC2に下記を入力します
=B2
これでセルB2と同じデータになります


次にセルC3に下記を入力し、オートフィルで下のセルまで入力します
=C2+B3
これですぐ上のセルと左のセルの合計が求まります
「SUM関数での利用」と「SUM関数を利用しない方法」は同じ結果を得られます

SUM関数を利用する方法と利用しない方法の違い

SUM関数を利用する方法は関数がそろっていて個人的には好きです
ただ、SUM関数を利用しない方法は関数を知らなくても、絶対参照と複合参照の利用ができなくてもできるところが魅力的です

COUNTIFS関数での利用

私はVBAエンジニアとして働いています
VBAには「型」があり、文字列型や数値型、日付型などがあります
この型を適切に使用することでプログラムが組みやすくなります
型と2次元配列(行と列で管理する配列)を利用してコードを書きます
ただ、型に対する2次元配列の配列番号を管理しきれないため、Excelで配列番号を管理します
そのときに使用するのが、絶対参照と相対参照を利用したCOUNTIFS関数です

Excelで項目と型を入力する欄を作ります

配列番号にその行までの型の個数をカウントしたものに対する配列番号を指定します

セルC2(上記赤枠)に下記を入力しオートフィルでコピーします
=COUNTIFS($B$2:B2,B2)-1
配列番号は0から始まるため、「-1」をしています
お客様IDは文字列で文字列型に対するお客様IDの配列番号は0、 氏名は文字列型で文字列型に対する氏名の配列番号は1、 … といったものを管理するための表を作成しました