Recup de données non encore présentes (bis)

Bonjour,

Il m'est nécessaire dans une extraction déjà en cours :

=unique(query('Base >250225'!A2:F;"select D, B, C where A >= DATE '"&TEXTE(B1;"yyyy-mm-dd")&"' and F like '10000000' and not (B like '%MAISON%' or B like '%GARAGE%' or B like '%APPART%' or B like '%APPT%' or B like '%CAVE%' ) "))""

d'ajouter uniquement les nouvelles données qui arrivent chaque jour, sans changer l'ordre existant précédemment, pour cela je fais un truc un peu lourd, je copie/colle les données précédentes et j'ajoute en fin (ici ligne 7012) la formule :

=ARRAYFORMULA(UNIQUE(FILTER(' Base >250225 '!D2:D; NON(NB.SI(A2:A701; Base!C2:C)) * (NON(REGEXMATCH(GAUCHE('Sup D Sup >250225'!D2:D; 1); "^[BC]$"))))))

Là ou je bloque est sur l'ajout des conditions identiques à celle du query de base.
soit

"select D, B, C where A >= DATE '"&TEXTE(B1;"yyyy-mm-dd")&"' and F like '10000000' and not (B like '%MAISON%' or B like '%GARAGE%' or B like '%APPART%' or B like '%APPT%' or B like '%CAVE%' ) "

et de ne pouvoir faire le select D,B,C vu que c'est un 'Filter'.

Merci par avance de votre aide.

Fichier de démo :

docs.google.com/spreadsheets/d/1-kXaTbI5HKbJRNlS4dh8TiUN3L6z45-whiL9mD5ElmE/edit?gid=1400517474#gid=1400517474

Bonjour,

Pouvons-nous reprendre avec quelques explications : il est possible avec VSTACK de facilement mettre deux tableaux l'un sous l'autre via une formule. La question principale est donc de bien comprendre ce que vous voulez extraire et sous quelles conditions.

Pour info on peut reproduire le fonctionnement de QUERY avec des combinaisons d'autres fonctions comme FILTER, c'est plus un choix suivant les préférences qu'une nécessité.

Donc, pour moi la fonction ci-dessous fait ce que vous voulez

=LET(colFil;Base!$D$2:$D$54;
FILTER(colFil;
BYROW(colFil;LAMBDA(x;COUNTIF($A$2:$A$20;x)<1));
LEFT(UPPER(colFil);1)<>"B";
LEFT(UPPER(colFil);1)<>"C"))

Mais : votre fichier a des scripts, la colonne A:A s'étend automatiquement quand j'ajoute des références sur la feuille Base, donc je ne compends pas l'intérêt de la formule puisque toutes les nouvelles références se retrouvent ajoutées à la colonne A…

Donc si vous pouviez un peu réexpliquer : de quoi on part, où on va et pourquoi/comment. Car il y a surement moyen de simplifier un peu si c'est plus clair. Moi je ne comprends pas quelles données il faut ajouter à quelle liste.

Pour info : utiliser un tableau structuré pour la Base serait vraiment un +, car utiliser des références de colonne entière a tendance à beaucoup ralentir un fichier (inutilement).

Bonjour,

Merci de votre retour.

Qu'entendez vous par

Pour info : utiliser un tableau structuré pour la Base serait vraiment un +, car utiliser des références de colonne entière a tendance à beaucoup ralentir un fichier (inutilement).

L'idée n'est pas de mettre des tableaux les uns sous les autres.

L'idée est de pas avoir de doublons du même contrat (ou même personne) à chaque ajout de données dans la base.

Si le contrat P12345678 apparait dans la MAJ du 12/02/25, mais qu'il remonte la même panne le 15/05 lors de l'ajout des nouvelles données, le but est qu'il ne remonte qu'une fois (et pas 2 fois, puisque présent 2 fois) mais aussi sans changer de place dans l'ordre.

Bonjour,

J'entends d'utiliser ceci Exploiter les tableaux et formules structurées dans Google Sheets pour l’analyse des données de vente - L'atelier informatique

Ça évite de casser les formules si les données s'allongent. sans avoir besoin d'écrire par exemple "B:B" pour se référer aux données de la colonne B qui est à 99% vide donc 99% de calculs inutiles.

Vous n'avez pas répondu au niveau du script ni sur la formule proposée. Je ne comprends toujours pas désolé.

Rechercher des sujets similaires à "recup donnees encore presentes bis"