【发布时间】:2021-07-09 23:16:55
【问题描述】:
我正在尝试创建一个数据库,用于记录与 Black Desert Online 的 API 相关的商品最高价格。第一列是项目的索引号,第二列是此代码从API Prices Tab 发布到MaxPrice Tab 的市场价格:
function readSalesNum() {
var sheetFrom = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Prices");
var sheetTo = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("MaxPrice");
// Copy from 2nd row, 5th column, all rows for one column
var index = sheetFrom.getRange(2, 2, sheetFrom.getLastRow(), 1).getValues();
var marketprice = sheetFrom.getRange(2, 5, sheetFrom.getLastRow(), 1).getValues();
//Item name overwrites itself
sheetTo.getRange(1,1,index.length,1).setValues(index);
sheetTo.getRange(1,2,index.length,1).setValues(marketprice);
}
我需要跟踪所有商品的最高售价。 API 每 30 分钟更新一次。在 BDO 中,开发人员强制执行的所有项目都有市值。这就是为什么最初脚本会每 2 小时发布一个包含更新价格的新列,然后 =MAX 以查找该项目的当前最高价格。但是,如果将新项目添加到 API(按字母顺序),则会扭曲所有数据
我需要一个脚本来查看 MaxPrices 中的 A 列,在价格中找到匹配的数字,然后将当前市场价格发布到 MaxPrices 中的 B 列。如果“价格”选项卡中每个项目的当前市场价格上涨,则仅更新 MaxPrices 中的 B 列。
【问题讨论】:
标签: google-apps-script google-sheets vlookup