QNA > C > Come Aggiungere Automaticamente Eventi A Un Google Calendar Da Un Foglio Di Google

Come aggiungere automaticamente eventi a un Google Calendar da un foglio di Google

Tante risposte valide a questa domanda, ma non una dettagliata su Apps Script, così ho pensato di aggiungerne una.

È possibile inviare dati da fogli a un calendario con Apps Script (un linguaggio di scripting che permette di aggiungere funzionalità extra alle G Suite Apps ed è gratuito).

Considera un esempio di base con eventi in Fogli, come questo:

main-qimg-447d490a6821e71952199d3c7e1974ae

Apri lo Script Editor (dal menu Strumenti) e rimuovi completamente il codice boilerplate myFunction(). Add this code:

  1. // function to retrieve data from Sheet and add to Calendar 
  2. function simpleSheetsToCalendar() { 
  3.  
  4. // get spreadsheet 
  5. var ss = SpreadsheetApp.getActiveSpreadsheet(); 
  6. var sheet = ss.getSheetByName('Sheet1'); 
  7.  
  8. // get the data from Google Sheet 
  9. var data = sheet.getRange(sheet.getLastRow(),1,1,2).getValues(); 
  10.  
  11. // create variables 
  12. var date = data[0][0]; 
  13. var title = data[0][1]; 
  14.  
  15. // get calendar 
  16. var masterCal = CalendarApp.getCalendarById('[email protected]'); 
  17.  
  18. // add to calendar 
  19. masterCal.createAllDayEvent(title,date);  
  20.  

This Apps Script code does a few things:

  • Get the active spreadsheet (line 5)
  • Get Sheet1 of this spreadsheet (line 6)
  • Get the last row of data from Sheet1 (line 9)
  • Parse the last row of data into a date and title elements (lines 12 and 13)
  • Get the calendar to post event to (line 16)
  • Add event to the calendar (line 19)

Select this function and run it from the Run menu in the Script Editor window. La prima volta che la esegui, dovrai autorizzare lo script.

L'output è un nuovo evento per tutto il giorno, Evento 1, nel tuo Calendario:

main-qimg-ea0b1225136322856a843d9fbf89fee6

Se aggiungi una nuova riga ed esegui nuovamente la funzione, creerai un nuovo evento.

Foglio:

main-qimg-c13602197f61a45b038763fc9e2e825d

Calendario:

main-qimg-72eda54688427be598c432e7fa35784f

Puoi aggiungere un trigger per lanciare questa funzione ogni volta che viene aggiunta una nuova riga di dati, per aggiungere automaticamente eventi al tuo Calendario. Vai su Edit > Current Project trigger's

Poi nella nuova finestra, scegli Add Trigger in basso a destra.

Poi aggiungi un trigger che lancia la funzione ogni volta che il foglio viene modificato.

main-qimg-723d96071e7a26d2130928cc47732a0f

Ovviamente puoi anche diventare molto più granulare con le opzioni per aggiungere a un calendario, per esempio includendo orari di inizio e fine, email di ospiti, luoghi ecc.

Per maggiori informazioni sul servizio Calendar in App Script, vedi la documentazione di Google.

Di Nason

C'è un modo per disabilitare Bixby su un Samsung Note 9? Mi sta facendo impazzire e Verizon dice che non può essere disabilitato. :: Come risolvere un iPhone bloccato in modalità cuffie
Link utili