2017-02-28 13 views
0

目的:スプレッドシート上の1つのセルから一部のテキストの一部をコピーし、別のセルに貼り付けることを試みています。Google Scriptセルの一部を別のシートにコピー

私はこれをすべて間違っている場合、私は許してくださいJavascriptにはまだ新しいです。

1つのスプレッドシートには、私が使用するサービスから自動的に情報が入力されます。私はその情報に参加して、別のスプレッドシートにコピー&ペーストしたいと思っています。

この例では、セルA1に「2017年2月28日午前10時38分」に日付が設定されます。私は、2017年2月28日の日付をコピーして別のGoogleシートに貼り付けるだけです。

これが私の現在のコードは次のようになります。

function myFunction() { 
var ss = SpreadsheetApp.getActiveSpreadsheet(); 
var target = SpreadsheetApp.openById("abc1234"); 
var source_sheet = ss.getSheetByName("Text"); 
var target_sheet = target.getSheetByName("Bills"); 
var sheet = ss.getSheets()[0]; 
var range = sheet.getRange("A1:D4"); 
var cell = range.getCell(1, 1); 
var string1 = cell.getValue(); 
var string2 = string1.split(" ", 2); 
var target_range = target_sheet.getRange("J4"); 

string2.copyTo(target_range); 

//Logger.log(string2); 

} 

私はこれを行うとき、私は受信エラーがある: はTypeError:オブジェクト2月、28で関数のcopyToを見つけることができません、。 (13行、ファイル「テスト」)

簡単なこれ多分何かが私が続きますが、範囲の値を設定する.setValueを()を使用する必要があり

答えて

0

をそれを把握jsut。範囲をstring2の値に設定するには、13行目を次のように置き換えます。

target_range.setValue(string2);

スクリプトの例については、Tutorialsを参照してください。特にワークフローとエンドツーエンドの例。

+0

私はこれを行うときに2月28日ではなく2月だけです。これは、それが間違って分裂するためですか? –

+0

スペースに分割しています。私はコードのその部分を見ていませんでした。 'var string2 = string1.split(" at ");'とstring2は "at"の両側の項目の配列になりますので、私が与えた行は 'target_range.setValue( string2 [0]); ' –

関連する問題