Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script 如何使用google sheets脚本粘贴格式?_Google Apps Script_Google Sheets_Scripting - Fatal编程技术网

Google apps script 如何使用google sheets脚本粘贴格式?

Google apps script 如何使用google sheets脚本粘贴格式?,google-apps-script,google-sheets,scripting,Google Apps Script,Google Sheets,Scripting,我正在使用下面的代码将数据从一个选项卡复制并粘贴到工作表中的另一个选项卡。问题是有几列是w/l记录,显示为“9-2”(对于ex),数据被粘贴为值。然后,以“短日期”格式错误地重新校准了w/l记录 function copyData() { var ss=SpreadsheetApp.getActive(); var sh=ss.getSheetByName('Standings - live'); var rg=sh.getRange("A40:P69"); var vA=r

我正在使用下面的代码将数据从一个选项卡复制并粘贴到工作表中的另一个选项卡。问题是有几列是w/l记录,显示为“9-2”(对于ex),数据被粘贴为值。然后,以“短日期”格式错误地重新校准了w/l记录

function copyData() { 

  var ss=SpreadsheetApp.getActive();
  var sh=ss.getSheetByName('Standings - live');
  var rg=sh.getRange("A40:P69");
  var vA=rg.getValues();
  var tsh=ss.getSheetByName('Daily Result');
  var trg=tsh.getRange(tsh.getLastRow()+1,1,30,16);
  trg.setValues(vA);
}

问题是,我需要粘贴值来清除原始粘贴上单元格中的逻辑/语法。然后,如何在相同范围内向“粘贴格式”添加第二步,以将w/l记录重置为正确的格式?

我在上面的评论中回答。要粘贴格式,请以首选格式复制单元格,然后将格式粘贴到目标单元格中

粘贴格式(适用于mac):选项+命令+v


通过提前将首选格式放置在目标单元格中,我避免了在格式中编写脚本。

为了正确了解您的情况,您能否提供用于复制您的问题的示例电子表格,以及您是否可以包含您期望的输出?当然,请删除您的个人信息。您是否熟悉使脚本能够复制值和/或格式的方法。还有其他的选择——这里是一个很好的开始感谢@tedinoz回复的地方。我没有使用您的解决方案,而是复制了一个包含格式化记录的单元格,然后将该格式粘贴到“目标”选项卡上的“目标”列中。现在,即使我正在粘贴值,它们也会被转换为首选格式,因为单元格会提前保存该格式。您好。我真的很高兴这一切顺利,你想回答你自己的问题。您需要做的是显示代码以及所做的更改。这对以后阅读你答案的人来说是很有价值的。你能解释一下代码的作用吗?
function testTemplate()
{
  var ss=SpreadsheetApp.getActiveSpreadsheet()
  var template=ss.getSheetByName("Test Sheet")
  var destSheet=ss.getSheetByName("Sheet1")
  var lr=destSheet.getLastRow()
  var lc=destSheet.getLastColumn()
  template.getRange(9,2,3,6).copyTo(destSheet.getRange(2,1,lr,lc), SpreadsheetApp.CopyPasteType.PASTE_FORMAT, false)
}