簡體   English   中英

將單元格值從一張紙復制並粘貼到另一張onEdit

[英]copy and paste cell value from one sheet to another onEdit

我寫了一個Google腳本來創建值並將其值從一個工作表中的單元格粘貼到另一個工作表中(相同的電子表格)。 該代碼包括以下兩個步驟:

  1. (有效):如果編輯了一張紙中特定列的單元格,則下一個相鄰的單元格將基於該編輯獲得一個值。

  2. (無效):將相鄰單元格的新值粘貼到第二張工作表中下一個空行(第一列)的單元格中。

到目前為止,下面的代碼是我嘗試過的代碼,但是該值未出現在第二張紙上。 有人知道我在下面的問題出在哪里嗎?

謝謝

function onEdit() {
 var a = [19,21,23]
 var ss = SpreadsheetApp.getActive()
 var s = ss.getActiveSheet();
  if( s.getName() == "ALL" ) {
   var valActive = s.getActiveCell();
   var col = valActive.getColumn();
   var row = valActive.getRow();
   var range = s.getRange(row, 1);
   var val0 = range.getValue();
   if( a.indexOf(col) > -1 && valActive.getValue() != '') {
    var nextCell = valActive.offset(0, 1);
    var val1 = valActive.getValue();
    var time = Utilities.formatDate(new Date, "GMT+1", "HHmm");
     nextCell.setValue(val0 + '_' + val1 + '_' + time);
    var rowNext = nextCell.getRow();
    var colNext = nextCell.getColumn();
    var target = SpreadsheetApp.getActive().getSheetByName("Samples");
    var lastRow = target.getLastRow();
    s.getRange(rowNext, colNext).copyTo(target.getRange(lastRow + 1, 1), {contentsOnly: true});
   }
  }
 }

要使第二部分工作,您需要在另一張圖紙上追加一行。 嘗試這樣的事情:

  var sheet = SpreadsheetApp.getActive().getSheetByName("Name");
  sheet.appendRow([newValue]);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM