2016-12-22 3 views
1

Я хочу объединить 2 ячейки для создания одной даты в сценарии приложений, чтобы добавить событие в календарь.Дата скрипта Google Apps в двух столбцах

function AgendaL13() { 
    var classeur = SpreadsheetApp.getActive(); 
    var feuille1 = classeur.getSheetByName("TABLEAU DE BORD") 
    var sheetNom = feuille1.getRange("D4").getDisplayValue(); //Nom client 
    var titre = feuille1.getRange("E5").getDisplayValue(); // title of event 
    var cal = CalendarApp.getDefaultCalendar(); // default calendar 

    var date = feuille1.getRange('H13').getValue(); // date 22/12/2016 
    var heure = feuille1.getRange('I13').getValue(); // Hour 18:00 

    var dateNew = date+heure; 

    cal.createEvent(sheetNom+ " : " +titre, dateNew, dateNew); 
} 

я хочу datenew = Чт 22 декабря 2016 18:00:00 GMT + 0100 (CET)

Возможно ли это? Извините за мой плохой английский (я французский)

ответ

0

Try:

date.setHours(heure.getHours()); 
date.setMinutes(heure.getMinutes()); // if you use minutes 
date.setSeconds(heure.getSeconds()); // if you use seconds 

Это установит date 's время для heure' s время.

1

Я также работал над подобным случаем. Это сработало для меня:

function myFunction() 
{ 
    var sheet = SpreadSheetApp.openById("SheetId").getSheetByName("SheetName"); 
    var data = sheet.getDataRange(2,1,sheet.getLastRow(),sheet.getLastColumn()).getValues(); 

    var date = data[rowIndexforDate][columnIndexforDate]; 
    var time = data[rowIndexforTime][columnIndexforTime]; 

    var eventTime = setTimeToDate(date,time); 

    //after this would be the code for the creation of the event 
} 

function setTimeToDate(date,time) //this function does the job 
{ 
    var t = time.split(":"); //in my case the time is separated by ":" 

    var dateMod = new Date(date.setHours(t[0],t[1],t[2],0)); 
    return dateMod; 
} 
Смежные вопросы