Stu*_*art 5 google-sheets google-apps-script
我有一张数据表,它全天通过 vlookup 从另一张表中读取信息。另一张表通过 importxml 链接到网站,该网站全天刷新。
获得信息后,我需要删除公式并保留值。即,一旦单元格不再显示为#N/A,请用值替换该行数据。我的想法是将其设置为触发器,然后每小时运行一次,循环遍历每一行并更新不再显示#N/A 的所有行。
小智 8
您可以通过运行以下脚本将公式的输出替换为静态值。关键点是某个范围被复制到自身,但仅作为 value 复制。
function freezeValues() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName('Sheet1'); // or whatever name
var range = sheet.getRange("A1:Z1"); // assuming your data appears in A1-Z1
range.copyTo(range, {contentsOnly: true});
}
Run Code Online (Sandbox Code Playgroud)
也就是说,将公式保留在适当的位置会更合乎逻辑,因此它会继续生成您希望记录的输出,并将其输出复制到其他地方,例如复制到电子表格的新行。例子:
function logValues() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName('Sheet1'); // or whatever name
var range = sheet.getRange("A1:Z1"); // assuming your data appears in A1-Z1
var values = range.getValues(); // get the data
sheet.appendRow(values[0]); // appends a row with these values to the bottom of sheet
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5259 次 |
最近记录: |