こんにちは。テックブログの萱場です。
本日は、GASで簡単なプログラムを書いてみたいと思います。
スプシでGASを使うには、はんいの値を取得する、逆に指定した範囲やセルに任意の値を出力する。といっ操作が基本になるかと思います。
その中でも、今回は、スプシの選択したセルに関して、何行目何列のセルなのかを表示させたいと思います。
GASに関する説明はこちらを御覧ください。
サンプルコード
function getSelectedCellInfo() {
// ①スプレッドシートのアクティブなシートを取得
let activeSheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
// ②選択範囲を取得
let selection = activeSheet.getActiveRange();
// ③行と列のインデックスを取得
let row = selection.getRow();
let column = selection.getColumn();
// ④出力
Logger.log('選択したセルは ' + row + ' 行目の ' + column + ' 列目です。');
}
解説
まずはアクティブなシートを取得して行きます。
アクティブというのは、平素にいうと開いて使っている状況ということです。
getActiveSheet()というメソッドを使用すると、返り値として、”Sheet”クラスのインスタンスが返ってきます。このインスタンスは、プログラム実行時点でのアクティブなシートです。
①の部分で、アクティブなシートを取得できました。
②のgetActiveRange()メソッドは、Rangeクラスのインスタンスを返り値として返します。このインスタンスには、実際のセルの値を取得するgetValue()メソッドや、行を取得するgetRow()、列を取得するgetColumn()メソッド等が使用できます。
②でアクティブ(自分が選択しているセル)が取得できました。
③でその取得した行列のインデックス(番号)を各変数に代入しています。
最後の④Logger.log()というメソッドを使用して、任意として行と列の番号をログに出力するようにしています。
まとめ
非常に短いコードですが、GASを使用して、スプシの操作上の値を取得して、それを出力してみました。
このような簡単なコードを理解できたあとは、やりたいことのゴール(成果物)を設定(設計)して、そのために必要なことを積み上げていくだけです。
株式会社デザインXでは、アパレル業界のお客様に向けて、ECサイトや業務基幹システム(ERP)の開発・導入支援を行っております。ご興味をお持ちの方は、是非下記リンクよりお気軽にお問い合わせください。
また、株式会社デザインXでは、ソフトウェアエンジニア・社内SEなど、共に働く仲間を募集しています。テクノロジーでアパレル業界のBtoBビジネスを変えたいという熱意をお持ちの方、お待ちしております。ご興味のある方は、以下のリンクからお問い合わせください!