我正在使用以下脚本将单元格从Google表格复制到Google文档列表。 第一个值是日期,如何格式化为dd / mm / yy?当前显示如下:2020年1月10日,星期五,格林尼治标准时间-0500(美国东部标准时间)。
function SheetstoDocs() {
var headers = Sheets.Spreadsheets.Values.get('1LJZIENPlfYGwAod3k3ky0XNd6F7L3GZ2Xtv0weUwzaU', 'A4:S4');
var ss=SpreadsheetApp.openById('1LJZIENPlfYGwAod3k3ky0XNd6F7L3GZ2Xtv0weUwzaU');
var sh=ss.getSheetByName('Pending');
var vA=sh.getRange(5,1,sh.getLastRow(),sh.getLastColumn()).getValues(); //copia los valores
var csh=ss.getSheetByName('Pending');
var output=[];
var templateId = '1B72yUdxPLsf1HZJzAHbG0u3yCO_a75L4D8QKzRqCzBg';
var body = DocumentApp.openById(templateId).getBody()
var getLastColumn = sh.getLastColumn();
var getLastRow = sh.getLastRow();
var u = 0;
body.appendParagraph('')
body.clear();
for (var i=0;i<vA.length;i++) {
output.push([vA[i][0],vA[i][1],vA[i][2],vA[i][3],vA[i][4],vA[i][5],vA[i][6],vA[i][7],vA[i][8],vA[i][9],vA[i][10],vA[i][11],vA[i][12],vA[i][13],vA[i][14],vA[i][15],vA[i][16],vA[i][17],vA[i][18]]);
}
while (vA[u][0] != "-") {
for (var e=0;e<getLastColumn;e++) {
body.appendListItem(headers.values[0][e] + ' | ' + output[u][e]).setGlyphType(DocumentApp.GlyphType.BULLET);
}
body.appendPageBreak();
u = u + 1;
}
}
答案 0 :(得分:0)
而不是在
中使用getValues()
var = sh.getRange(5,1,sh.getLastRow(),sh.getLastColumn()).getValues();
您应该使用方法getDisplayValues()
。
getDisplayValues()
返回范围值的数组,但格式与用户界面中文本的显示方式相同-在日期和时间的情况下,它将返回显示值,而不是比Unix / Epoch时间或Date()
对象大。
希望对您有帮助!