スプレッドシートで行うマスターデータ管理術

October 29, 2020

初めまして、ソリッドスフィア株式会社のMです。

私はゲームアプリの企画職として従事させていただいております。

 

普段Excelの代替ツールとしてgoogleスプレッドシートを業務に使用することが多いのですが、その中で、特にスプレッドシートでマスターデータを管理する際に便利な関数をいくつかご紹介させていただきたいと思います。

 

 

(1)IMPORTRANGE関数

この関数は、他のスプレッドシートに存在するシートの内容を、入力先のシート上に表示するものです。

ここで表示させた内容は、元のシートの情報が書き変わるとリアルタイムに更新されるため、常に最新の情報を参照することができます。

 

特に多重に様々なIDを参照するマスターデータを作成する時には、この関数は欠かすことができません。

 

使用方法:

=IMPORTRANGE("参照先URL","シート名!範囲:範囲")

 

参照先URLは「https://」から「/edit#gid=***」の直前までを入力します。

この時、URLとシート名・範囲の双方それぞれを””で囲むことを忘れないようにしてください。

 

  

(2)OFFSETとMATCH関数の併用

ある値を参照して、その右隣の値を導きたいときにVLOOKUP関数を使用されることが大井かと思います。

しかし、関数によって多くの箇所が自動化されたブックは動作が重くなりがちです。

そこでOFFSETとMATCH関数を組み合わせて使用すると、VLOOKUPよりも若干(?)動作が軽くなります。

 

使用方法:

=OFFSET(ア!$A$1,MATCH(イ,ウ!範囲:範囲,0)-1,1)

 ア!$A$1:導きたい値が存在するシート名と、その値が存在するセルの最も若い行・列

 イ:検索キー

 ウ!範囲:範囲:導きたい値が存在するシート名と検索キーで参照する列

OFFSET内のオフセット行(上記「-1」)・オフセット列(上記「1」)は、導きたい値の場所に応じて調整すると良いかと思います。

これを応用することで、VLOOKUPとは異なり、左側のセルも導くことができます。

 

 

(3)ARRAYFORMULA関数

アレイフォーミュラというカッコいい名前に反して、現状私はもっぱら「あるシートのリストを表示する」ということだけに使用しております。

具体的に言うと、例えば他のシートの各行にID等がざっと並べられている時に、その行を表示させたい時等です。

こんなものは何らかの名前のついた関数など用いず、単純に「=セル名」を入力すれば十分かと思われるかもしれませんが、ARRAYFORMULA関数の利点はその名前のカッコよさと、「1番上に入力するだけでよい」というものです。

つまり、各セル上に関数が入っていないため、これまた若干(?)シートの計算が軽くなるのです。

 

 

使用方法:

=ARRAYFORMULA(シート名!範囲:範囲)

 

-----

 

既にご存知のものもあるかもしれませんが、もしそうでない方がいらっしゃれば、少しでもその助けになれば幸いです。

 

最後までお読みいただき、ありがとうございました。