Google apps script 如何在appsScript getValues()结果中仅设置一列的日期格式

Google apps script 如何在appsScript getValues()结果中仅设置一列的日期格式,google-apps-script,google-sheets,google-sheets-formula,spreadsheet,Google Apps Script,Google Sheets,Google Sheets Formula,Spreadsheet,我有一个带有日期列的列表。如何仅使用特定日期格式设置此列的格式 如何将其应用于第一列(我只关心内存格式) Utilities.formatDate(sheet.getRange(“G2:G2”).getValue(),ss.getSpreadsheetTimeZone(),“dd/MM/YY”); 函数sendmail() { var bodyStart=mailSheet.getRange(“J8:J10”).getValues(); var bodyEnd=mailSheet.getRang

我有一个带有
日期列的列表
。如何仅使用特定日期格式设置此列的格式

如何将其应用于第一列(我只关心内存格式)

Utilities.formatDate(sheet.getRange(“G2:G2”).getValue(),ss.getSpreadsheetTimeZone(),“dd/MM/YY”);
函数sendmail()
{
var bodyStart=mailSheet.getRange(“J8:J10”).getValues();
var bodyEnd=mailSheet.getRange(“J11:J13”).getValues();
var values=mailSheet.getRange(“Q8:T”).getValues().filter(行=>行[0]!=”);
//Utilities.formatDate(sheet.getRange(“G2:G2”).getValue(),ss.getSpreadsheetTimeZone(),“dd/MM/YY”);
var html=bodyStart.concat(values).concat(bodyEnd).reduce((s,e)=>s+=“”+e.join(“”+“”),“”+“”);
MailApp.sendmail({
收件人:mailSheet.getRange(“B1”).getValue(),
主题:mailSheet.getRange(“B4”).getValue(),
htmlBody:html
});
}
var values=mailSheet.getRange(“Q8:T”).getValues().filter(行=>行[0]!=”);
对于(var i=1;i
var values=mailSheet.getRange(“Q8:T”).getValues().filter(行=>行[0]!=”);

对于(var i=1;i,您的答案可能有效,但不是最佳答案

反复使用
GAS
方法不是一个好方法

解决方案: 改为使用数组并摆脱
for
循环:

function myFunction(){
  const ss = SpreadsheetApp.getActive();
  const sh = ss.getSheetByName('Sheet1'); // change it to your sheet name
  const rng = sh.getRange("A2:A"+sh.getLastRow()); // select the range of your dates
  const newDates = rng.getValues().flat().map(d=>[Utilities.formatDate(d,ss.getSpreadsheetTimeZone(), "dd/MM/YY")]);
  rng.setValues(newDates)
}

我希望您可以根据需要调整脚本。将
A2:A
修改为您有日期的列。将
Sheet1
更改为您的工作表名称。

您的答案可能有效,但不是最佳答案

反复使用
GAS
方法不是一个好方法

解决方案: 改为使用数组并摆脱
for
循环:

function myFunction(){
  const ss = SpreadsheetApp.getActive();
  const sh = ss.getSheetByName('Sheet1'); // change it to your sheet name
  const rng = sh.getRange("A2:A"+sh.getLastRow()); // select the range of your dates
  const newDates = rng.getValues().flat().map(d=>[Utilities.formatDate(d,ss.getSpreadsheetTimeZone(), "dd/MM/YY")]);
  rng.setValues(newDates)
}
我希望您可以根据需要调整脚本。将
A2:A
修改为有日期的列。将
Sheet1
更改为工作表的名称

function myFunction(){
  const ss = SpreadsheetApp.getActive();
  const sh = ss.getSheetByName('Sheet1'); // change it to your sheet name
  const rng = sh.getRange("A2:A"+sh.getLastRow()); // select the range of your dates
  const newDates = rng.getValues().flat().map(d=>[Utilities.formatDate(d,ss.getSpreadsheetTimeZone(), "dd/MM/YY")]);
  rng.setValues(newDates)
}