Twórz wydarzenia kalendarza Google z arkusza kalkulacyjnego, ale zapobiegaj duplikatom

Próbuję napisać skrypt, który będzie pobierał dane z arkusza kalkulacyjnego Google i tworzył wydarzenia w moim kalendarzu Google.

Udało mi się to dobrze, ale produkował duplikaty za każdym razem, gdy go uruchomiłem. Teraz próbuję temu zapobiec, tworząc kolumnę 17 w arkuszu kalkulacyjnym z automatycznie wygenerowanym unikalnym identyfikatorem zdarzenia dla każdego wiersza, a następnie przy każdym uruchomieniu skryptu będzie on sprawdzał identyfikator zdarzenia dla każdego wiersza i usunie odpowiednie zdarzenie w kalendarzu przed odtworzeniem go z oryginalnymi danymi lub zaktualizowanymi danymi, jeśli zmieniłem wiersz.

Jestem zupełnie nowy w tworzeniu skryptów i brukowałem to razem, ale teraz uderzam w ścianę. Czy ktoś może to rozwiązać?

function CalInsert() {
    var cal = CalendarApp.getDefaultCalendar();
    var id = SpreadsheetApp.getActiveSheet().getRange(2,17).getValue();

    if (id != 0) {
        var event = cal.getEventSeriesById(id);
        event.deleteEventSeries();
    }

    var sheet = SpreadsheetApp.getActiveSheet();
    var startRow = 2; // First row of data to process
    var numRows = sheet.getLastRow(); // Number of rows to process
    var dataRange = sheet.getRange(startRow, 1, numRows, sheet.getLastColumn());
    var data = dataRange.getValues();

    for (i in data) {
        var row = data[i];
        var title = row[0]; // First column
        var desc = row[13]; // Second column
        var tstart = row[14];
        var tstop = row[15];

        var event = cal.createEvent(title, tstart, tstop, {description:desc});
        var eventid = event.getId();
        SpreadsheetApp.getActiveSheet().getRange(2,17).setValue(eventid);
    }
}

questionAnswers(2)

yourAnswerToTheQuestion