cra*_*ice 5 google-sheets google-apps-script
没有办法在 Google 文档中只共享一个电子表格中的一张。因此,您必须共享整个电子表格。因此,我正在考虑编写一个脚本来同步两张工作表(每个工作表都在不同的电子表格中)。我想使用一个函数来获取行作为数组来做到这一点。有没有更好的策略来做到这一点?
实现此目的的一种方法是向两个电子表格添加一个脚本,在更改触发器上将其内容复制到另一个电子表格。例如,如果您要将如下所示的内容添加到两个电子表格中,交换源信息和目标信息。
var sourceSpreadsheetID = "ID HERE";
var sourceWorksheetName = "SHEET NAME HERE";
var destinationSpreadsheetID = "ID HERE";
var destinationWorksheetName = "SHEET NAME HERE";
function importData() {
var thisSpreadsheet = SpreadsheetApp.openById(sourceSpreadsheetID);
var thisWorksheet = thisSpreadsheet.getSheetByName(sourceWorksheetName);
var thisData = thisWorksheet.getDataRange();
var toSpreadsheet = SpreadsheetApp.openById(destinationSpreadsheetID);
var toWorksheet = toSpreadsheet.getSheetByName(destinationWorksheetName);
var toRange = toWorksheet.getRange(1, 1, thisData.getNumRows(), thisData.getNumColumns())
toRange.setValues(thisData.getValues());
}
Run Code Online (Sandbox Code Playgroud)
只需为 importData 函数添加一个更改触发器,然后当对任一文档进行任何更改时,它会将内容复制到另一个电子表格,从而保持两者同步。
显然,如果两个电子表格同时更新,您就会遇到麻烦。
| 归档时间: |
|
| 查看次数: |
7502 次 |
| 最近记录: |