Office Scriptsでカーソルの位置のアドレス(セル座標)を取得するコードを紹介します。
概要
こちらの記事では、Office Scriptsを利用して、
カーソルの位置のセルの値を取得するコードを紹介しました。状況によっては、セルの情報ではなく、
カーソルの座標値("A1"といったアドレス値)を取得したい場合があります。
この記事では、Office Scriptsでカーソルの位置のアドレス(セル座標)を取得するコードを紹介します。
座標値を取得するには、ExcelScript.RangeオブジェクトのgetAddressメソッドを利用します。
カーソル位置のExcelScript.Rangeオブジェクトを取得して、getAddressメソッドを呼び出すとアドレスを取得できます。
書式
(ExcelScript.Rangeオブジェクト).getAddress();
定義
戻り値は、string 型です。
例:カーソルのあるセルのアドレスを取得
コード
Office Scriptsを作成し、以下のコードを記述します。
function main(workbook: ExcelScript.Workbook) {
let cell: ExcelScript.Range = workbook.getActiveCell();
console.log(cell.getAddress());
}
解説
workbook.getActiveCell()メソッドを呼び出しカーソルの位置のセルのオブジェクトを取得しcell変数に代入します。
let cell: ExcelScript.Range = workbook.getActiveCell();
取得したセルのアドレス値をgetAddress()メソッドで呼び出します。アドレスの値をログメッセージに出力します。
ログメッセージ出力の詳細は
こちらの記事を参照して下さい。
console.log(cell.getAddress());
実行結果
カーソルを移動します。今回はD5セルに移動しました。コードエディタでOffice Scriptsの実行ボタンをクリックします。
コード下部の[出力]エリアに "Sheet1!D5" のメッセージが表示されます。カーソルの位置のセル座標が取得できています。
範囲選択した場合
範囲選択されていた場合の動作を確認します。左上から右下に向かってドラッグして選択した場合は、左上の "Sheet1!B10"がメッセージとして表示されます。
右下から右上に選択した場合は、右下の "Sheet1!H14"がメッセージとして表示されます。範囲選択の場合は、選択を開始したカーソルの位置が getAddress() の値となる動作です。
Office Scripsでカーソルの位置のアドレス(セル座標)を取得できました。
著者
iPentec.com の代表。ハードウェア、サーバー投資、管理などを担当。
Office 365やデータベースの記事なども担当。
最終更新日: 2024-01-23
作成日: 2023-01-02