全然仕事と関係ない話で調べる機会があったのと、色々応用が利きそうなので書き残しておく。
実現方法としては幾つかの関数を用いて以下のように処理する。
- IMPORTRANGE関数で外部のシート取得(別のシートまたは別のスプレッドシート)
- おなじみVLOOKUP関数で取得した範囲の1列目から該当する値を検索して置き換える
実際にセルに入る計算式の雰囲気はこんな感じ。
=VLOOKUP(検索に使う値,IMPORTRANGE("シートのハッシュorURL", "シート名!A1:C13"),2,FALSE)
ちょっと分解して記述する。
IMPORTRANGE
改めて説明するとこの関数は特定のシートの指定した範囲の内容を取得する。
VLOOKUPで検索する範囲を指定するために使用する関数になる。
それぞれの引数の内容は以下の通り。
第1引数...スプレットシートのハッシュまたはURL。文字なので""で囲むこと。
第2引数...セルの範囲。始点から終点の範囲を指定する。これも""で囲むこと。
また第二引数はシート名も指定できる。付ける場合は"シート名!A1:C13"とする。
関数が正しく動いているかは適当なセルに張り付ければ指定した範囲の値が取得できるので
まっさらなシートにでも張り付けて確認するといい。
VLOOKUP
ある列から指定した値をもつ行を検索し、見つけたら同じ行の別な列の値を返す関数。
第1引数...検索したい値、文字
第2引数...検索したい範囲。先頭列が検索対象になる。
第3引数...検索したら結果として返す列の番号。2が指定されていれば範囲の左から2列目の値が返却される
第4引数...検索結果の並び替え済みのフラグ。FALSEなら完全一致。TRUEなら部分一致で結果が返ってくるらしい。
それぞれのリファレンスは以下の通り。
IMPORTRANGE
VLOOKUP
個人でなんかまとめるのにも良さそうなので小さいことでも定期的にまとめていきたい。
0 件のコメント:
コメントを投稿