2021-06-22
現在開いているスプレッドシート名をユーザ定義関数で取得する
スプレッドシート名を動的に読み込み、ファイル内の特定セルに表示する方法について解説します。
月次レポートを毎月、ファイルごとに作成し、〇〇月_{ファイル名}レポート
のような形式でシートのタイトルを作成させたかった、というのがはじまり。
スプレッドシートの標準機能には、ファイル名を取得する方法(関数等)がないようでしたので、ユーザ定義関数を用いて実現させました。
手順
①メニュー > ツール > スクリプトエディタをクリック
②エディタが開くので、コード.gsが選択されている状態で、下記のソースコードを入力
myFunctionは削除しても無視しても大丈夫。関数名はGET_FILE_NAME
と記載していますが、別の関数名、任意の名前を付与していただいてかまいません。
function GET_FILE_NAME()
{
return SpreadsheetApp.getActiveSpreadsheet().getName();
}
③入力したコードを保存
フロッピーディスクのアイコンがクリッカブルになっているので、クリックし保存します。通常のエディタでファイルを保存するように、Ctr+s
でも保存可能です。
④セルに作成した関数を入力
ファイル名を表示したいセルを選択し、先ほど作成した関数=GET_FILE_NAME()
を入力します。
ファイル名を変更するとセルの表記も変更されます(反映されるのに時間差があります)。