Convertissez des fichiers XLS en feuille de calcul Google à l'aide de Google Apps Script

Je m'appelle Alexander et je suis pigiste, ma principale spécialité est Google Apps Script. L'un des clients devait convertir par programme des fichiers Microsoft Excel en feuilles de calcul Google. Je n'avais jamais rencontré une telle tâche auparavant, j'ai donc appelé Google pour obtenir de l'aide. J'ai fouillé dans un tas de forums, mais je n'ai pas trouvé de solution toute faite. J'ai dû écrire mon vélo. Et bien que le code se soit avéré court, il a fallu un certain temps pour trouver une solution. Voici ce qui s'est passé:

function convert(folderId) { var folderIncoming = DriveApp.getFolderById(folderId); var files = folderIncoming.getFilesByType(MimeType.MICROSOFT_EXCEL_LEGACY); while (files.hasNext()) { var source = files.next(); var sourceId = source.getId(); var fileName = source.getName().replace('.xls', ''); var file = { title: fileName, }; file = Drive.Files.copy(file, sourceId, {convert: true}); } } 

Cette fonction prend en paramètre l'ID du dossier dans lequel se trouvent les fichiers à convertir. Recherche les fichiers correspondant au type MimeType.MICROSOFT_EXCEL_LEGACY dans ce dossier, ce sont des documents Microsoft Excel XLS, et en crée des copies dans le même dossier. Lors de la copie, le format est converti, le paramètre convert: true en est responsable. Si le nom .xls est présent dans le nom de fichier d'origine, il est supprimé.

Si vous devez traiter des fichiers XLSX, changez le type en MimeType.MICROSOFT_EXCEL et
 var fileName = source.getName().replace('.xls', '');  var fileName = source.getName().replace('.xlsx', ''); 

Mais si vous copiez simplement ce code et essayez de l'exécuter, il générera une erreur '' ReferenceError: l'objet "Drive" n'est pas défini. "Pour le corriger, vous devez sélectionner l'élément" Fonctions Google supplémentaires ... "dans le menu" Ressources "du menu" Ressources ". Dans la fenêtre qui apparaît, recherchez «Drive API» et activez-la.

image

Ensuite, dans le menu "Ressources", sélectionnez "Projet Developers Console ...". Dans la fenêtre qui apparaît, suivez le lien avec l'ID du projet.

image

Sur la page qui apparaît, dans le menu de gauche, sélectionnez "APIs & auth" puis "APIs". La liste des API apparaîtra, nous y suivons le lien «Drive API».

image

Cliquez sur le bouton "Activer l'API" - vous avez terminé. Vous pouvez courir.

De même, vous pouvez convertir des fichiers d'autres formats.

J'espère que ce message fait gagner du temps à quelqu'un.

Source: https://habr.com/ru/post/fr428616/


All Articles