IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

APIs Google Discussion :

Copie de tableau [Google Sheets]


Sujet :

APIs Google

  1. #1
    Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2019
    Messages : 7
    Points : 3
    Points
    3
    Par défaut Copie de tableau
    Bonjour,

    Je souhaite dupliquer un modèle de tableau (des lignes 3 à 9 / A à H) via un bouton image que j'ai inséré en A1. Tableau intégrant mise en forme conditionnelle et validation de données.

    La copie devant prendre la place du modèle et celui-ci se retrouver en dessous. Et ainsi de suite à chaque fois que l'on clique sur le bouton, les tableaux les uns à la suite des autres.

    J'ai essayé en créant une macro (copie du tableau + ajout de 7 lignes au dessus + coller en A3) et en attribuant le script créé sur le bouton mais en vain...

    Avez-vous une idée de la faisabilité de la chose ?

    En vous remerciant pour votre aide

    TX.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    voir : element​.clone​Node().
    [EDIT] Oups... Pas vu qu'on parlait de l'API Google...

    Le minimum serait que tu montres ce que tu as fait.
    Dernière modification par Invité ; 23/04/2019 à 13h04.

  3. #3
    Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2019
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Merci pour ta réponse. Je suis non initié aux tableurs mais je vais étudier ta préconisation.

    Voici une capture de ce à quoi ressemble mon tableau pour le moment :

    Nom : CDE-TXjpg.jpg
Affichages : 262
Taille : 116,3 Ko

  4. #4
    Invité
    Invité(e)
    Par défaut
    [EDIT] Oups... Pas vu qu'on parlait de l'API Google...
    voilà pourquoi je ne comprenais pas "(des lignes 3 à 9 / A à H)"


    Oublie ce que j'ai écrit.
    Je n'ai pas de connaissance dans ce domaine.

  5. #5
    Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2019
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    A ma décharge de n'avoir pas précisé l'outil concerné : Google Sheets

  6. #6
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    Qu'entends-tu par "la copie devant prendre la place du modèle et celui-ci se retrouver en dessous" ? Tu veux qu'un ensemble de cellules contiennent plusieurs données ? Tu veux remplacer les anciennes données par les nouvelles ?

  7. #7
    Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2019
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Le principe serait qu'une fois que l'on clique sur le bouton + (A1) une copie du modèle de tableau s'ajoute juste en dessous en A3.

    Nom : CDE-3-TXjpg.jpg
Affichages : 257
Taille : 171,5 Ko
    Images attachées Images attachées  

  8. #8
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut
    C'est beaucoup plus clair avec ce visuel

    A chaud comme ça, je ferais:
    - Une 1ère feuille avec le template de tableau. On n'y touche pas, éventuellement on peut la protéger en écriture.
    - Une 2nde feuille avec le bouton + et les instances du template. Quand tu cliques sur le bouton, tu copies ton template et tu le colles sous l'existant.

    EDIT : j'ai fait un test.

    Mon script pour mon bouton :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    function add() {
     
      var templateSheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Template');
      var sourceRange = templateSheet.getRange('A1:C4');
     
      var clientsSheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Clients');
     
      var numRows = sourceRange.getNumRows();
      var numColumns = sourceRange.getNumColumns();    
      var lastRow = clientsSheet.getLastRow();
      if (lastRow == 0) {
        lastRow = 5;
      }
     
      var destRange = clientsSheet.getRange(lastRow + 2, 1, numRows, numColumns);
     
      sourceRange.copyTo(destRange);
    }
    Le fichier : https://docs.google.com/spreadsheets...it?usp=sharing

  9. #9
    Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2019
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Un grand merci à toi ! Cela fonctionne parfaitement

    Sans abuser de ton temps, est-il possible que le tableau s'ajoute au dessus du précédent (et non en dessous), c'est à dire toujours à partir de A3 ?

  10. #10
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut


    Ah ah ! J'avais pensé à faire ça mais vu l'heure fallait que je rentre chez moi. Mais je vais regarder car je trouverais ça bien plus élégant !

    EDIT : c'est fait, il y a maintenant 2 boutons, l'un pour insérer en haut, l'autre pour ajouter en bas

  11. #11
    Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2019
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Je suis parvenu à déterminer l'emplacement de la copie (qui se superpose avec le tableau précédent) :

    var destRange = clientsSheet.getRange('A3');

    Mais pas à faire en sorte de créer avant X lignes nécessaires au-dessus du précédent tableau...

  12. #12
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 957
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 957
    Points : 44 121
    Points
    44 121
    Par défaut
    Bonjour,
    Mais pas à faire en sorte de créer avant X lignes nécessaires au-dessus du précédent tableau...
    à voir sheet.insertRows(rowIndex, numRows)

  13. #13
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut
    J'ai édité mon message précédent car j'ai mis à jour mon fichier. Tu devrais y trouver la solution

  14. #14
    Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2019
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Un immense merci tu es un Chef !

    Merci également à NoSmoking !

    Bonne journée, bon we à vous !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Copie un tableau dans un autre
    Par Montor dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 23/05/2008, 21h29
  2. redimenssionnement & copie de tableau
    Par TOPGUN89 dans le forum Windows Forms
    Réponses: 5
    Dernier message: 24/09/2007, 14h45
  3. Format des surfaces et copies vers tableau
    Par ultimanu dans le forum DirectX
    Réponses: 7
    Dernier message: 12/04/2007, 16h33
  4. Copie de tableau dynamique Tridimensionel
    Par Zenol dans le forum C++
    Réponses: 23
    Dernier message: 19/12/2005, 16h00
  5. [Tableau]Problèmes avec copie de tableau
    Par Itachi-san dans le forum Collection et Stream
    Réponses: 13
    Dernier message: 25/11/2005, 17h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo