2014-04-06 11 views

risposta

17

Sorprendentemente non ho trovato nessuna risposta chiara e veloce.

Così qui è il mio codice:

function onOpen() { 
    var activeSpreadsheet = SpreadsheetApp.getActiveSpreadsheet(); 
    var yourNewSheet = activeSpreadsheet.getSheetByName("Name of your new sheet"); 

    if (yourNewSheet != null) { 
     activeSpreadsheet.deleteSheet(yourNewSheet); 
    } 

    yourNewSheet = activeSpreadsheet.insertSheet(); 
    yourNewSheet.setName("Name of your new sheet"); 
} 

Infine, ricordiamo che questa nuova scheda sarà automaticamente quello attivo.

+0

Il codice è ok ma probabilmente non lo vuoi su onOpen. Se si desidera crearlo su richiesta dell'utente, creare un menu. –

+0

Sì hai ragione, questo è esattamente quello che ho fatto subito dopo! –

+0

Stavo aprendo un post perché ogni volta che creo un nuovo foglio utilizzando uno script, il foglio di calcolo smette di funzionare dopo un po '. Ti capita? – soneangel

2

Ecco un semplice esempio:

var name = (new Date()).toLocaleDateString(); 
SpreadsheetApp.getActiveSpreadsheet().insertSheet(name): 
+1

Hai due punti invece di un punto e virgola alla fine della seconda riga. Lo aggiusterei, ma S.O. è stupido riguardo alle modifiche di 1 personaggio. –

0

Here'e il codice:

var file = SpreadsheetApp.create(name); 

Se si desidera incollare il file nella cartella specifica:

var file_ = DriveApp.getFileById(fileId) 
    var folder = DriveApp.getFolderById(folderId); 
    var folder.addFile(file_);