Tu peux me passer ta formule avec le IMPORTHTML que je teste ?
Tu peux tenter de faire un getValues() sur le range et de le copier manuellement pour voir.
Tu peux me passer ta formule avec le IMPORTHTML que je teste ?
Tu peux tenter de faire un getValues() sur le range et de le copier manuellement pour voir.
Bon ça marche dernier problème je me retrouve avec un écart de 200 lignes entre chaque export manuel
J'ai testé sur ton fichier : je vide la feuille OVER, la feuille Play Ov ne change pas.
J'ai fait un test ici : https://docs.google.com/spreadsheets...it?usp=sharing
Tu as la page "All" avec le IMPORTHTML. La page "Filtered" contient un filtre basique. La page "Archive" est remplie avec la macro "archive_filtered". Une fois les données archivées, je peux supprimer toutes les données de "All" et "Filtered", la page "Archive" ne change pas.
Il y a bien une différence entre ces 2 lignes pour la macro :
Avec la première, tout fonctionne comme expliqué ci-dessus ; avec la seconde, je vois bien la formule FILTER() en "Archive!A1" et donc si les données de "All" changent alors "Archive" change.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 source.copyTo(dest, SpreadsheetApp.CopyPasteType.PASTE_VALUES, false); source.copyTo(dest);
Du coup, quel est ton problème ?
Merci beaucoup à toi je touche au but après comme je le disais plus haut entre chaque export vers la page archive je me retrouve avec un ecart de 200 lignes entre chaque copie bizarre
Mais vraiment merci pour tout
Qu'appelles-tu écart ? Des lignes vides ? Des lignes différentes ?
De rien
Des lignes vides
A chaque lancement de la macro les lignes se mettent bien en archive mais au second lancement les lignes vont se coller 200 lignes en dessous de la dernière et ai si de suite
Ca doit venir d’une ligne ou autre ds la macro mais je maîtrise pas assez le script pr trouver cette satanée erreur
200 lignes vides tu dis ?
Peut-être qu'elles ne sont pas vraiment vides...
OVER!A300 contient une formule (qui donne la valeur "" à la cellule), alors qu'en OVER!A301 il n'y a rien. Or dans cette feuille OVER, je vois des données "utiles" jusqu'à la ligne 79. Ainsi, tu ne copies pas 79 lignes la première et la 2e copie se met 200 lignes "vides". Tu copies 300 lignes dés la première fois et la 2e copie se met juste derrière ces 300 lignes. Mais tu as 200 (un peu plus) lignes qui ne contiennent pas de "valeurs visibles".
Tu peux le voir clairement avec cette fonction :
Les logs t'affichent 300 et non 79.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 function test() { var spreadsheet = SpreadsheetApp.getActive(); var sourceSheet = spreadsheet.getSheetByName('OVER'); Logger.log("Last="+sourceSheet.getLastRow()); }
Pour rappel, ton code de play() utilise la même fonction pour récupérer le nombre de lignes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 // Copy to the end of Paly Ov var startRow = destSheet.getLastRow() + 1; var dest = destSheet.getRange(startRow, 1, 1, 1);
bon nikel tout marche bien après quelques petits réglages à voir maintenant dans le temps ce que ça va donner !!
En tout cas un grand merci à toi pour ta disponibilité et ton grand savoir sans oublier ta patience envers les débutants
Avec plaisir !
Ça m'a permis d'apprendre d'améliorer mes connaissances
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager