Копировать / вставить значения формулы Показать как «Загрузка ...» - PullRequest
0 голосов
/ 11 июля 2019

У меня есть работающий макрос Google Script, который копирует сводную таблицу / формулы и вставляет ее в качестве значений в другой диапазон.

Это работает без проблем, но иногда вставленные значения отображаются как «Загрузка ...». Я предполагаю, что есть некоторая задержка или задержка между копированием / вставкой, но как я могу убедиться, что копирование / вставка будет гарантировать, что значения будут загружены перед вставкой?

Я попытался добавить функцию временной задержки (Utilities.sleep(1000)) и SpreadsheetApp.flush() с противоречивыми результатами. Они были помещены в строку сразу после функции вставки. Смотрите код ниже:

var sourceRange = sheet.getRange("A:C"); //copy table from  
var destRange = sheet.getRange("D:F"); //copy table to
sourceRange.copyTo(destRange, SpreadsheetApp.CopyPasteType.PASTE_FORMAT, false);
sourceRange.copyTo(destRange,{contentsOnly:true});
SpreadsheetApp.flush();

Хотите знать, если кто-то еще сталкивался с этой проблемой, и как я могу убедиться, что значения не вставляются как "Загрузка ..."?

1 Ответ

0 голосов
/ 12 июля 2019

Это работает:

function runOne() {
  var ss=SpreadsheetApp.getActive();
  var sheet=ss.getActiveSheet();
  var sourceRange = sheet.getRange('A1').getDataRegion(); 
  var destRange = sheet.getRange('D1'); 
  sourceRange.copyTo(destRange,{contentsOnly:true});
}
...