[英]Google Apps Script - Want to truncate a text in a particular column in a form sheet
我正在尝试使用左侧 function 将工作表中特定列的自动文本 (a8a2dc4e-ba77-450d-8352-0044365e7322) 截断为文本 (a8a2) 的前四个......我无法做到它,我收到错误消息,我无法在工作表本身上使用 function,因为工作表每天清除所有 function
这是下面的脚本
function Truncate () {
// Get Spreadsheet and sheets
var R = SpreadsheetApp.openById("Sheet Link");
var Choices = R.getSheetByName("Choices");
UniqueNo = Choices.getRange("H2:H").left(H:4"); //sheet column range and the left function
}
请问我的脚本有什么问题,我可以使用哪个脚本来实现这个目标?
您的目标是获取 H 列的值,对每个元素应用操作以获取此数组中每个元素的前 4 位数字,然后将值粘贴/覆盖回 H 列。
为此,您必须使用getValues()获取列 H 的值。首先,您使用flat获取一维数组中的值。 然后,您需要将 function 应用于此数组的每个元素,以获取每个单元格的前 4 位数字。 使用map()来做到这一点。
获取字符串前 4 位数字的一种方法是使用substring(0,4) 。
function truncate() {
const R = SpreadsheetApp.openById("SheetId");
const Choices = R.getSheetByName("Choices");
const Hrange = Choices.getRange("H2:H");
const data = Hrange.getValues().flat().map(r => [r.toString().substring(0,4)] );
Hrange.setValues(data);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.