【Excel 関数】OFFSET関数で基準セルから別のセル範囲を参照する方法
janjf93 / Pixabay

はじめに

はじめのうちはOFFSET関数は本当によくわからない関数だと思います。

私もはじめてOFFSET関数を使うとき、この関数がなにをしているのか全く分かりませんでした。

OFFSET関数は、別のセル範囲の値を取得する場合に便利な関数です。このページでは、OFFSET関数をわかりやすく解説します。

OFFSET関数

OFFSET関数は、あるセルの基準にしてそのセルから指定した行と列にある値が何かを取得できます。値は複数取得もできます(これが少しややこしいです)。

順に説明しますと、例えば以下のようなデータがあり、A1セル「10」を基準セルとします。そこから、「2行」下の「3列」右のセルが何か?を取得しようとすると、

OFFSET関数では =OFFSET(A1,2,3)と記述することで「99」を取得できます。

OFFSET関数の表記方法
=OFFSET(参照、行数、列数、[高さ]、[幅])
参照

基準となるセルです。上記画面ではA1セル「10」を基準セルとして指定しています。

行数 & 列数

基準セルから何行目の何列目かを指定します。例えば、上記画面では、「10」より「2行」「3列」の値を取得しようとする場合以下のようにします。

  • 行数 = 2
  • 列数 = 3
[高さ] & [幅]

ともに省略可能です。基準セルから指定した行列のセルを複数取得する場合に指定します。

省略した場合は、基準セルの「行数」と「列数」になります。

具体例

セルの基準にしてそのセルから指定した行と列にある値が1つの場合と複数の場合の二通りを説明します。

セルを1つだけ取得する場合

先ほどの例と同様ですが、基準セルをA1にする場合に、「2行」「3列」の値は「99」となります。

下記画面では[高さ][幅]は省略していますが、基準セルの「行数」=1 と「列数」=1 ですので、[高さ] = 「1」& [幅] =「1」となります。

セルを複数取得する場合

基準セルをA1にする場合に「2行」「3列」にあるセル範囲 D3:F4(下記の黄色の箇所)を取得することも[高さ][幅]を指定すれば可能です。

下記画面の場合、セル範囲 D3:F4 である「99」「100」「128」「129」「157」「158」となります。

ですが、セルの複数範囲を指定する場合は、注意するべきことがあります。

このままOFFSET関数で値を取得しようとしても、ひとつのセルにはひとつの値しか取得できないため「#VALUE!」とエラーが表示されます。

では、この関数をどういう風に使えばいいかというと集計関数(AVG,SUM など)や値の検索する関数(VLOOKUP、INDEX など)など別の関数と併用して使えばいいんです。

例えば、下記ではSUM関数(セル範囲の値の合計を算出する関数)と併用することで、OFFSET関数で取得した複数のセルの範囲の値の合計値を計算できます。

このほかにもVLOOKUP関数と併用させることで、基準セルから離れたセル範囲の値の検索を行うことも可能です。

最後に

いかがでしょうか?

OFFSET関数はあまり見慣れない関数で、使い方も知っていないと難しい関数ですが、要所で使えばとても便利な関数です。

ぜひ使いこなしてみてください!

プログラミング学習、独学では難しくないですが?
  • プログラミングをどう勉強したらいいのかわからない
  • わかりにくい参考書が多く、自分一人では解決できそうにない
  • 壁にぶつかった時の解決策がわからない
そんな人にはプログラミングスクールtech boost」がおすすめです。

 
 

プログラミングスクールtech boost」の魅力
  1. オーダメイドの自分の目標にあったプランが受講できる!
  2. 現役エンジニアがあなたの学習を全力サポート!
  3. スクール卒業後のキャリアサポートも充実インターン/就職/転職/独立 など
  4. オリジナル Web アプリも作れるようになります!
  5. 近年トレンドの AI や IoT、ブロックチェーンも学習できます!
  6. 受講スタイル(通学かオンライン授業)も選択可能!

 

こんな人におすすめ!

  • 未経験からでもプログラミングをしっかり学びたい!

未経験からでも受講期間中にオリジナルサービス開発レベルまで全力でサポートします。

 

  • プログラミングを一人で学ぶことに限界を感じた!

未経験で一からプログラミング学習するには限界があります。

現役エンジニアがあなたの目標に沿った学習プランを提案してくれるので安心して学習できます。

 

  • 技術力をつけて、IT企業に就職やフリーランス、独立を目指したい!

卒業後のキャリアサポートも充実しているため、未経験からも IT 業界に参入できます。

 

悩んでいるなら、お気軽に無料説明会へ!

現役エンジニアの私がいいますが、IT 業界は圧倒的な人材不足です。

 

スクールは料金が高いからなあ」と悩まれている人もいると思いますが、

IT業界は仕事が有り余っているため、一度学べば速攻で資金回収できます。

 

もしプログラミング学習で悩んでいたり将来的に IT企業、フリーランスなどで働きたいのであれば、

プログラミングスクール「tech boost」へ無料相談だけでもいってみてはいかがでしょうか?

おすすめの記事