LANG SELRCT

Google Apps Scriptのコードを書く場所  (新規作成: スプレッドシート | スクリプトエディタ

2020年4月5日日曜日

ArrayformulaはA1Notationの箇所を対象範囲に変えて使う


タイトルに思いを込めましたが、Arrayformulaを使う際の備忘録です。


公式のヘルプを見たけれどよくわからなかったので、手元で試した結果を書き残します。

ドキュメント エディタ ヘルプ
ARRAYFORMULA


今回試したこと
  • シートのA, B, C列の値を/でつなげて表示する

以下2つの方法で試します。
  1. Arrayformulaではなくセル毎に関数を入れる方法
  2. Arrayformulaで処理する方法

1はE2に「=A2&"/"&B2&"/"&C2」を入れてE6まで引っ張って入力する。
2はG2に「=Arrayformula(A2:A6&"/"&B2:B6&"/"&C2:C6)」を入れるだけ。


デモ用に作ったシートはこんな感じです。


ポイント

E列に入っている「=A2&"/"&B2&"/"&C2」〜「=A6&"/"&B6&"/"&C6」

G2では「=Arrayformula(A2:A6&"/"&B2:B6&"/"&C2:C6)」
という関数で表現しました。


理解を深めるために色分けして分解してみます。

E列の
=A2&"/"&B2&"/"&C2 〜 =A6&"/"&B6&"/"&C6



G2で
=Arrayformula(
  A2:A6&"/"&B2:B6&"/"&C2:C6
)

と表現しています。


E列のA2をG2では対象範囲であるA2:A6としています。
E列のB2もG2では対象範囲であるB2:B6としています。
E列のC2も同様にG2ではC2:C6と範囲で表現しています。

つまり
E列では「対象のセル番地」で計算しますが、G2では「対象範囲」で計算しています。


ちなみに
「A1, B1などセル番地で表記」することを「A1Notation」と表現するようです。


なので
ArrayformulaはA1Notationの箇所を対象範囲に変えて使う
というタイトルにしました。


以上です。


関連記事

参考

ARRAYFORMULA
https://support.google.com/docs/answer/3093275?hl=ja

A1 notation
https://developers.google.com/sheets/api/guides/concepts#a1_notation

最新の投稿

Pixel 5でSuicaが使えないときはGoogle PayでSuicaを有効にしてみる

Pixel 5への機種変でSuicaが使えない人向けに書きました。 MISSION Pixel 5でSuicaを使えるようにする SOLUTION 旧端末で機種変更の設定を行う NFCをオンにする Google PayでSuicaを有効にする PROBLEMS 以前...