Introdução

Google Apps Script (GAS) é uma plataforma de desenvolvimento de scripts associada a diversos serviços do Google, como Google Sheets, Google Docs e Google Forms. Ela permite automatizar tarefas, adicionar funcionalidades personalizadas e integrar serviços do Google.

Neste memorando, vamos explorar os principais conceitos do Google Apps Script usando exemplos concretos. Abordaremos noções como variáveis, laços, funções e muito mais, adaptando-os ao contexto específico do GAS.

Estrutura básica em Google Apps Script

Para começar, vamos examinar a estrutura básica de um script Google Apps.

/**
 * Structure de base en Google Apps Script
 */
function exempleStructureGAS() {
    // Votre code ici
    Logger.log("Hello, Google Apps Script!");
}

Tipos e Variáveis no Google Apps Script

Google Apps Script utiliza JavaScript como linguagem de programação. Os tipos de dados e as variáveis funcionam de forma semelhante ao JavaScript padrão.

/**
 * Types et Variables en Google Apps Script
 */
function exempleTypesVariablesGAS() {
    // Votre code ici
    var nombre = 42;
    var texte = "Bonjour, Google Apps Script!";
    Logger.log(nombre);
    Logger.log(texte);
}

Operações e Operadores no Google Apps Script

As operações e operadores no Google Apps Script são os mesmos que em JavaScript.

/**
 * Opérations et Opérateurs en Google Apps Script
 */
function exempleOperationsGAS() {
    // Votre code ici
    var x = 10;
    var y = 5;
    var resultat = x + y;
    Logger.log(resultat);
}

Var, Let e Const no Google Apps Script

No GAS, os conceitos de`var`, let, et `const`são usados para declarar variáveis. No entanto, é essencial compreender suas diferenças e suas implicações.

/**
 * Var, Let et Const en Google Apps Script
 */
function exempleVarLetConstGAS() {
    // Votre code ici
    // Utilisation de var
    var x = 10;
    if (true) {
        var x = 20; // La variable x est modifiée globalement
    }
    Logger.log(x);

    // Utilisation de let
    let y = 30;
    if (true) {
        let y = 40; // La variable y est limitée au bloc if
    }
    Logger.log(y);

    // Utilisation de const
    const z = 50;
    // z = 60; // Impossible de réassigner une constante
    Logger.log(z);
}

Estruturas de Controle em Google Apps Script

As estruturas de controle tais como`if`, else, while et `for`são utilizadas para gerenciar o fluxo de execução no Google Apps Script.

/**
 * Structures de Contrôle en Google Apps Script
 */
function exempleStructuresControleGAS() {
    // Votre code ici
    var condition = true;

    if (condition) {
        Logger.log("La condition est vraie.");
    } else {
        Logger.log("La condition est fausse.");
    }

    var compteur = 0;
    while (compteur < 5) {
        Logger.log(compteur);
        compteur++;
    }

    for (var i = 0; i < 3; i++) {
        Logger.log(i);
    }
}

Parâmetros e Escopos em Google Apps Script

Os parâmetros e os escopos desempenham um papel crucial no desenvolvimento de scripts em GAS. Entenda como eles funcionam para evitar comportamentos inesperados.

/**
 * Paramètres et Scopes en Google Apps Script
 */
function exempleParametresScopesGAS(parametre) {
    // Votre code ici
    var variableGlobale = "Je suis global";

    function afficherParametre() {
        Logger.log(parametre);
    }

    afficherParametre();
    Logger.log(variableGlobale);
}

Constantes, Variáveis e Letras em Google Apps Script

Entender a diferença entre`const`, var, et `let`é essencial para uma utilização eficaz das variáveis no Google Apps Script.

/**
 * Constantes, Variables, et Lettres en Google Apps Script
 */
function exempleConstantesVariablesLettresGAS() {
    // Votre code ici
    const constante = "Je ne change pas";
    Logger.log(constante);

    var variable = "Je peux changer";
    Logger.log(variable);

    let lettre = "Je peux aussi changer, mais seulement dans mon bloc";
    Logger.log(lettre);
}

Laços em Google Apps Script

Laços, tais como`for` et while, são essenciais para iterar sobre elementos e executar operações repetitivas.

/**
 * Boucles en Google Apps Script
 */
function exempleBouclesGAS() {
    // Votre code ici
    for (var i = 0; i < 3; i++) {
        Logger.log(i);
    }

    var condition = true;
    var compteur = 0;

    while (condition) {
        Logger.log("Tour de boucle");
        compteur++;
        if (compteur === 3) {
            condition = false;
        }
    }
}

Objetos em Google Apps Script

Os objetos são usados para estruturar os dados. No GAS, muitos objetos integrados facilitam a interação com os serviços do Google.

/**
 * Objets en Google Apps Script
 */
function exempleObjetsGAS() {
    // Votre code ici
    var feuille = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
    var cellule = feuille.getRange("A1");
    cellule.setValue("Nouvelle valeur");
}

Constantes, Variáveis e Letras em Google Apps Script

Entender a diferença entre`const`, var, et `let`é essencial para uma utilização eficaz das variáveis no Google Apps Script.

/**
 * Constantes, Variables, et Lettres en Google Apps Script
 */
function exempleConstantesVariablesLettresGAS() {
    // Votre code ici
    const constante = "Je ne change pas";
    Logger.log(constante);

    var variable = "Je peux changer";
    Logger.log(variable);

    let lettre = "Je peux aussi changer, mais seulement dans mon bloc";
    Logger.log(lettre);
}

Funções no Google Apps Script

As funções são elementos fundamentais na programação. No GAS, elas podem ser declaradas e chamadas de diferentes maneiras.

/**
 * Fonctions en Google Apps Script
 */
function exempleFonctionsGAS() {
    // Votre code ici
    function additionner(a, b) {
        return a + b;
    }

    var resultat = additionner(2, 3);
    Logger.log(resultat);

    // Fonction anonyme
    var multiplier = function (x, y) {
        return x * y;
    };

    Logger.log(multiplier(4, 5));
}

Operadores Spread e Rest em Google Apps Script

Os operadores de descanso (…​) e de propagação (…​) são úteis para manipular os arrays e os objetos de forma concisa.

/**
 * Opérateurs de Repos et de Propagation en Google Apps Script
 */
function exempleOperateursReposPropagationGAS() {
    // Votre code ici
    // Opérateur de repos (...) pour les tableaux
    var nombres = [1, 2, 3, 4, 5];
    var [...copieNombres] = nombres;
    Logger.log(copieNombres);

    // Opérateur de propagation (...) pour les objets
    var objOriginal = { x: 1, y: 2 };
    var objClone = { ...objOriginal, z: 3 };
    Logger.log(objClone);
}

Atribuição por Decomposição em Google Apps Script

Atribuição por desestruturação é um recurso poderoso que permite extrair valores de objetos e arrays de forma concisa.

/**
 * Affectation par Décomposition en Google Apps Script
 */
function exempleAffectationDecompositionGAS() {
    // Votre code ici
    var coordonnees = [3, 4];
    var [x, y] = coordonnees;
    Logger.log(x);
    Logger.log(y);

    var utilisateur = { nom: "John", age: 30 };
    var { nom, age } = utilisateur;
    Logger.log(nom);
    Logger.log(age);
}

Coleções e Programação Declarativa no Google Apps Script

Google Apps Script suporta estruturas de dados como arrays, e os conceitos de programação funcional e iteração declarativa (><impérative), tais como`map`, reduce et forEach.

/**
 * Collections et Programmation Déclarative en Google Apps Script
 */
function exempleCollectionsFonctionnelleGAS() {
    // Votre code ici
    // Exemple de tableau (collection)
    var nombres = [1, 2, 3, 4, 5];

    // Utilisation de forEach
    nombres.forEach(function (nombre) {
        Logger.log(nombre);
    });

    // Utilisation de map
    var carresNombres = nombres.map(function (nombre) {
        return nombre * nombre;
    });
    Logger.log(carresNombres);

    // Utilisation de reduce
    var somme = nombres.reduce(function (acc, nombre) {
        return acc + nombre;
    }, 0);
    Logger.log(somme);
}

Conclusão

Este memo cobriu os conceitos fundamentais do Google Apps Script ilustrando-os com exemplos de código concretos. Use esses conhecimentos para automatizar suas tarefas diárias, personalizar seus documentos e aproveitar plenamente as funcionalidades do Google Apps Script.

Articles connexes