Google apps script 如何根据C列中的输入复制U列单元格中的粘贴值

Google apps script 如何根据C列中的输入复制U列单元格中的粘贴值,google-apps-script,google-sheets,Google Apps Script,Google Sheets,默认情况下,B列等于U列。我希望找到一个宏,该宏复制U列(例如U2)中的值,并将其粘贴为同一单元格(U2)中的值,如果将值输入到单元格C3中(U2单元格下一行)。请参见下面的示例,如果我在单元格C3中输入GHI123,则必须将CD复制并粘贴到单元格U2中 您可以通过以下应用程序脚本实现这一点 function onEdit(e) { var row = e.range.getRow(); var column = e.range.getColumn(); if (column ==

默认情况下,B列等于U列。我希望找到一个宏,该宏复制U列(例如U2)中的值,并将其粘贴为同一单元格(U2)中的值,如果将值输入到单元格C3中(U2单元格下一行)。请参见下面的示例,如果我在单元格C3中输入GHI123,则必须将CD复制并粘贴到单元格U2中


您可以通过以下应用程序脚本实现这一点

function onEdit(e) {
  var row = e.range.getRow();
  var column = e.range.getColumn();

  if (column == 3){
    cellToEdit = 'U' + (row - 1);
    dataToPaste = SpreadsheetApp.getActiveSheet().getRange(cellToEdit).getDisplayValue()
    SpreadsheetApp.getActiveSheet().getRange(cellToEdit).setValue(dataToPaste);

}

getDisplayValue()
方法允许您在任何脚本计算之后读取单元格的显示值。您可以找到此方法的参考。

您可以通过以下应用程序脚本实现此目的

function onEdit(e) {
  var row = e.range.getRow();
  var column = e.range.getColumn();

  if (column == 3){
    cellToEdit = 'U' + (row - 1);
    dataToPaste = SpreadsheetApp.getActiveSheet().getRange(cellToEdit).getDisplayValue()
    SpreadsheetApp.getActiveSheet().getRange(cellToEdit).setValue(dataToPaste);

}

getDisplayValue()
方法允许您在任何脚本计算之后读取单元格的显示值。您可以找到此方法的参考。

基本上是:
=ARRAYFORMULA(IF(LEN(C1:C),B1:B,)
通过脚本基本上是:
=ARRAYFORMULA(IF(LEN(C1:C),B1:B,)
通过脚本