Google apps scriptでスプレッドシートのセルの値をカット&ペーストする

Google apps scriptでスプレッドシートのセルの値をカット&ペーストするには

  • moveTo(target)

を使う。

・moveTo(target)
この範囲からターゲット範囲にカットアンドペースト(形式と値の両方)します。

タイプ 説明
target Range この範囲をコピーするターゲット範囲。左上のセル位置のみが関連します

参照:range#setFontColors(Object)

Google apps scriptでスプレッドシートのセルの値をカット&ペーストする

範囲.moveTo(シートオブジェクト.移動先セル範囲)と書く。

今回はA1セルを変数rng1へ格納しD2セル変数rng2へ移動するスクリプトと、A1:B10までの値をD1セルへカット・コピーするスクリプトを書いた。

/*A1セルの値をD10へ移動*/
function cutpast() {

//スプレッドシートAppを呼び出し
var ss = SpreadsheetApp.getActiveSpreadsheet();
//アクティブなシートを取得
var sht = ss.getActiveSheet();

//A1セルにあいうえおを記入してrng1へ格納
var rng1 = sht.getRange("A1").setValue("あいうえお");

//メッセージボックスに移動の通知
Browser.msgBox("A1セルの値を"+rng2+"へ移動します");

//D10セルを取得してrng2へ格納
var rng2 = sht.getRange("D10");

//moveToメソッドでrng1からrng2へテキスト移動
rng1.moveTo(rng2);
  
}


/*A1:B10セルの値をD1へ移動*/
function cutpast2() {

//スプレッドシートAppを呼び出し
var ss = SpreadsheetApp.getActiveSpreadsheet();
//アクティブなシートを取得
var sht = ss.getActiveSheet();

//A1:B10セルにあいうえおを記入してrng1へ格納
var rng1 = sht.getRange("A1:B10").setValue("あいうえお");

//メッセージボックスに移動の通知
Browser.msgBox("A1セルの値をD1へ移動します");

//D10セルを取得してrng2へ格納
var rng2 = sht.getRange("D2");

//moveToメソッドでrng1からrng2へテキスト移動
rng1.moveTo(rng2);
  
}

 

Google apps scriptでスプレッドシートのセルの値をカット&ペーストする

まとめ

範囲.muveTo(シート.範囲)なので難しい使い方はしない。

カットペーストのニュアンスではなかなか思いつかないメソッド名。でも知っておくと便利。

通常のコピペメソッドはコチラ↓

>>スプレッドシートをコピー&ペーストする

>>スプレッドシートの値を中央配置にする

>>スプレッドシートにある値を削除する

>>スプレッドシートの範囲を指定する