google-apps-script - 在谷歌表格中格式化 JSON 数据导入
问题描述
在会员/朋友@Tanaike 的帮助下,我们能够开发一个代码来从 JSON 列表中导入数据,但是“价格”字段中的数据导入如下“16 .4700000000”,我只想导入' 之后的前 2 位数字。' 得到“16.47”。
你能帮我完成这个任务吗?
这是我正在使用的当前代码:
// Call the Bling API
var response = UrlFetchApp.fetch("https://bling.com.br/Api/v2/produtos/json&apikey=APIKEY?imagem=S&estoque=S");
//Logger.log(response.getContentText());
// Parse the JSON reply
var json = response.getContentText();
var data = JSON.parse(json);
// Aquisição de dados.
var values = data.retorno.produtos.map(({produto: {codigo, gtin, descricao, preco, situacao}}) => [codigo, gtin, descricao, preco, situacao]);
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("produtos");
sheet.getRange(/*sheet.getLastRow() + */ 2, 1, values.length, values[0].length).setValues(values); ```
解决方案
这是我的一个项目中的一个片段,我在其中设置了数字格式以及边框和背景。
sheet.getRange(summaryAnnRetsFirstRow, 1, summaryAnnRetsLen, 4).setValues(summaryAnnRets);
sheet.getRange(summaryAnnRetsFirstRow,2, summaryAnnRetsLen, 2).setNumberFormat("$#,##0;$(#,##0)");
sheet.getRange(summaryAnnRetsFirstRow,4, summaryAnnRetsLen, 1).setNumberFormat("0.00%");
sheet.getRange(summaryAnnRetsFirstRow,1, summaryAnnRetsLen, sheet.getLastColumn()).setBorder(true, true, true, true, true, true, 'black', SpreadsheetApp.BorderStyle.SOLID_LIGHT);
sheet.getRange(summaryAnnRetsFirstRow,1, summaryAnnRetsLen, sheet.getLastColumn()).setBackground("#bdd4f9");
推荐阅读
- php - 如果调试为真,则重定向到登录获取 404 Laravel
- java - @Mock MessageSource 在 Junit 测试中始终为 getMessage 返回 null
- r - 使用 CRAN/Check_rhub 安装需要 C/C++/Fortran 的软件包
- r - 计算提前 n 天的滚动平均值
- cmake - CMAKE 没有将正确的值传播到代码
- c# - 我在将数据插入 MS Access 数据库时遇到问题
- batch-file - 有没有办法在不使用临时文件的情况下散列命令输出?
- java - 通过 PPM 对 box2d 进行 libGDX 缩放,停止渲染平铺地图
- css - Bootstrap 4:如何保持卡片内表格的侧边距?
- javascript - 使用某些浏览器时与 Cloud Firestore 数据库连接相关的问题