r

Membre habitué

Inscrit le :10/09/2025
Dernière activité :Hier à 09:05
Version d'Excel :365 FR
Messages
145
Votes
91
Fichiers
0
Téléchargements
0
SujetsMessagesStatistiquesVotes reçus

Messages postés par raccourcix - page 3

DateAuteur du sujetSujetExtrait du message
24/10/2025 à 11:45Thierry36 Formule recherche au plus procheBonjour =EQUIV($L$1;$B$1:$J$1;1) renverra 3 soit la colonne souhaitée donc en L2 =INDEX(B2:J2;EQUIV($L$1;$B$1:$J$1;1)) renverra 0,229 à recopier en L3 pour obtenir 0,928 par contre 0,5 renverra une erreur Stéphane...
22/10/2025 à 17:46ersauloVerifier dans une chaine de caracteres ce qu'il y a derriere l'arobaseLa demande n'est pas claire, attendons le retour de ersaulo Sinon, autre approche en remplaçant toutes les occurrences de @grandik.com par rien et on teste s'il reste encore des @ dans la cellule (donc des adresses ayant un autre domaine) =ESTERREUR(TROUVE("@";SUBSTITUE(A1;"@grandik.com";""))) en an...
22/10/2025 à 17:38ersauloVerifier dans une chaine de caracteres ce qu'il y a derriere l'arobase@Dan, a priori il y a plusieurs adresses mail dans une même cellule. La solution par MEFC "texte contenant" ne fonctionnera pas pour "popit@grandik.com, guitare@mouflers.com, guitare@grandik.com" car elle renverra "VRAI" et non "FAUX" (toutes les adresses ne se terminent pas par les caractères souha...
17/10/2025 à 19:00xavierdep Comptabiliser le nombre de lignes du meme moisSans colonnes intermédiaires en colonne E puis tirer la formule =SOMME((TEXTE($C$2:$C$625;"aamm")<>TEXTE(E$1;"aamm"))*(((TEXTE($A$2:$A$625;"aamm")=TEXTE(E$1;"aamm"))+(TEXTE($B$2:$B$625;"aamm")=TEXTE(E$1;"aamm")))>0)) le principe est de vérifier pour toutes les lignes si le mois n'est pas le...
30/09/2025 à 15:16ninninFonction nb.jours.ouvres avec une plageOu encore avec le contrôle sur la date de début avant de calculer le MAP et une vérification qu'il y a au moins une date dans la colonne "Date de fin" (sinon le FILTRE renverra une erreur) Stéphane...
29/09/2025 à 17:47ninninFonction nb.jours.ouvres avec une plageD'après ce que j'ai compris de la demande, il faut appliquer la fonction NB.JOURS.OUVRES dans un MAP pour effectuer le calcul sur toutes les dates de fin. =SOMME(MAP([Date de fin];LAMBDA(y;NB.JOURS.OUVRES([@[Date de début]];y)))) EDIT, je viens de voir votre version d'Excel....
26/09/2025 à 16:08bayard Accélérer le travail d'une macro@Dan C'est pour cela que j'avais inclus le titre dans le Resize. comme ça il y a toujours au moins une constante texte et on est certain que SpecialCells(xlCellTypeConstants, 3) ne renvoie pas d'erreur (d'où également le -1 pour retirer l'occurrence du titre). Dans la version avec prise en compte de...
26/09/2025 à 14:28bayard Accélérer le travail d'une macroEn effet, je suis passé par une Sub car je n'ai pas réussi à obtenir un résultat correct dans une Function avec SpecialCells Je laisse le sujet aux spécialistes VBA que je ne suis pas ! Stéphane...
26/09/2025 à 13:52bayard Accélérer le travail d'une macroJ'avais expliqué le -1 dans un message précédent = c'est pour retirer la valeur de la ligne de titre je pense qu'il n'y a pas de différence entre 50000, 5000 ou 500000 car SpecialCells ne va jamais au delà de SpecialCells(xlLastCell) faire l'essai avec une sélection des cellules vides. il ne va pas...
26/09/2025 à 12:12bayard Accélérer le travail d'une macroEtonnamment, xlCellTypeConstants renvoie le nombre de cellules fusionnées on peut toujours ajouter le nombre de cellules avec formules en additionnant le nombre de cellule obtenu avec SpecialCells(xlCellTypeConstants, 3) et avec SpecialCells(xlCellTypeFormulas, 3) avec ici l'affichage des formules p...
26/09/2025 à 11:37bayard Accélérer le travail d'une macroUne autre possibilité avec un résultat immédiat même avec 50000 lignes Sélectionner les cellules dont vous voulez calculer la valeur et exécuter la requête A partir de chaque cellule, je me décale d'une ligne et je prends une plage de 50000 lignes. je compte le nombre de constantes (nombre et texte)...
26/09/2025 à 08:49bayard Accélérer le travail d'une macroJe pense qu'il est préférable de ne pas fusionner les cellules mais de compléter toutes les lignes avec le montant. Quitte à jouer avec la MFC pour mettre des valeurs successives en blanc et retirer la bordure. (ici police en gris pour la voir dans ma copie d'écran) Stéphane...
25/09/2025 à 22:0578chrisFormules 365 à trouverExemple de formule pour gérer "les trous". l'étape "valeur_précédente" permet de recopier vers le bas en cas de cellule vide (0 au début dans tous les cas pour la première valeur) avec les formats personnalisés 0;-0; en colonne C et 0%;-0%; en colonne D Stéphane...
25/09/2025 à 14:1678chrisFormules 365 à trouverA mon tour d'être pris de vitesse avec ASSEMB.H Stéphane...
25/09/2025 à 14:0978chrisFormules 365 à trouverSinon pour ne pas à avoir à passer la dernière ligne de la colonne C en dur en D3 : en E3 : Stéphane...
25/09/2025 à 14:0178chrisFormules 365 à trouverEn D3 : =SI(ESTVIDE(C3:C11)+ESTVIDE(C2:C10);"";C3:C11-C2:C10) en E3 : =SIERREUR(D3#/C2:C10;"") Stéphane...
24/09/2025 à 18:36cowboy09310 Supprimer tirets "-"C'est un problème dans la fusion de colonnes par défaut si une des colonnes est "null" il ajoute le délimiteur quand même il faut remplacer le 3e argument du Table.CombineColumns Combiner.CombineTextByDelimiter(" - ", QuoteStyle.None) par each Text.Combine(_, " - ") traduit en Excel, par défaut on a...
24/09/2025 à 17:48cowboy09310 Supprimer tirets "-"Par formule : =GAUCHE(A1;NBCAR(A1)-3*(DROITE(A1;3)=" - ")) par Power Query, ajouter une colonne if Text.EndsWith([Colonne1]," - ") then Text.Start([Colonne1], Text.Length([Colonne1])-3) else [Colonne1] Sinon, d'où provienne ces tirets ? il est parfois possible de ne p...
23/09/2025 à 17:12nickal Recherche inverséePour rechercher la dernière occurrence, ajouter un -1 en dernier argument du RECHERCHEX =RECHERCHEX( RECHERCHEX("*";Tableau1[@[16/09/2025]:[01/05/2026]];Tableau1[@[16/09/2025]:[01/05/2026]];"";2;-1); 'Clés '!$B$4:$B$7; 'Clés '!$C$4:$C$7; "") et pour la...
23/09/2025 à 16:52nickal Recherche inverséeVu qu'il n'y a qu'une seule cellule remplie par ligne =RECHERCHEX(CONCAT(Tableau1[@[16/09/2025]:[01/05/2026]]);'Clés '!$B$4:$B$7;'Clés '!$C$4:$C$7;"") pour la date =RECHERCHEX("*";Tableau1[@[16/09/2025]:[01/05/2026]];Tableau1[[#En-têtes];&#...
22/09/2025 à 18:27saboh12617 TCD - Renommer en-tetes de sous sectionsCette option n'est pas accessible avec le modèle de données. Vu que les mesures DAX sont des sommes ou des max, peut-être faut-il charger directement les données issues de PQ directement dans un TCD et non dans le modèle de données D'une manière générale, je suis plutôt déçu de Power Pivot, je trouv...
22/09/2025 à 17:22saboh12617 TCD - Renommer en-tetes de sous sectionsEn complément à mon message précédent avec un MAX...
22/09/2025 à 17:16saboh12617 TCD - Renommer en-tetes de sous sectionsVoir dans le paramètre du champ (Automatique ou Personnalisés). ici les 2 TCD donnent le même résultat mais l'affichage indique "Total A" si automatique ou "Somme A" si personnalisés Stéphane...
22/09/2025 à 17:04Claudius91Trouver le jour et l'heure valeur maxi dans un tableauSans cellule intermédiaire =MAX(($B$2:$Y$32=MAX($B$2:$Y$32))*($A$2:$A$32+$B$1:$Y$1)) Stéphane...
22/09/2025 à 16:25SaidZFormule dynamique faisant planter ExcelPersonnellement j'essaierai de décomposer le LET étape1;ASSEMB.V(data); étape2;PRENDRE(étape1;;-1); étape3;FILTRE(étape1;étape2="Point fort"); etc. et je sortirai chacune des étapes dans le dernier argument du LET pour voir où le #VALEUR apparait il faut peut être mettre le SIERREUR à l'intérieur du...
22/09/2025 à 14:13maverick59264Power query cumul par trimestreQuelque chose comme EDIT ou un peu plus simple avec des dates Stéphane...
22/09/2025 à 13:10maverick59264Power query cumul par trimestreEt l'année prochaine, est ce que sera un nouveau fichier ou est-ce que les données des trimestres de 2026 doivent venir s'ajouter aux trimestres de 2025 ...
22/09/2025 à 12:38maverick59264Power query cumul par trimestreC'est évidemment possible par Power Query mais pour moi il ne faut pas confondre les données et l'affichage des données. A mon sens vous devez conserver l'intégralité des consommations des véhicules dans votre base sans calcul dans Power Query et c'est dans un TCD de synthèse que vous pouvez affiche...
22/09/2025 à 12:00maverick59264Power query cumul par trimestreEn complément, pour avoir 03, 06, 09 et 12 et non le n° du trimestre Number.ToText(3*(Number.IntegerDivide(Number.From(Text.Start([Période],2))-1, 3)+1), "00") Stéphane...
22/09/2025 à 11:51maverick59264Power query cumul par trimestreVoici une proposition en langage M Remarque, le n° du trimestre peut aussi être obtenu avec Date.QuarterOfYear(Date.FromText("01 "&[Période], [Format ="dd MM yyyy"]) Stéphane...
22/09/2025 à 09:32Claudius91Trouver le jour et l'heure valeur maxi dans un tableauJ'arrive un peu tard après les échanges en fin de semaine dernière mais pour avoir dans une seule cellule la date et l'heure du maximum (le maximum des maximum si plusieurs maximum) =MAX(($B$2:$Y$32=G34)*($A$2:$A$32+$B$1:$Y$1)) au format "jj/mm/aaaa hh:mm" et en matricielle Stéphane...
18/09/2025 à 19:19gan62Formule Index et equivAfin d'avoir toutes les colonnes en une seule fois il faut mettre un 0 à la place du 1 en dernier argument du INDEX =INDEX(B1:D5;EQUIV(A8;A1:A5;0);0) Cela n'empêche pas de mettre des $ au bon endroit Stéphane...
17/09/2025 à 12:36colineslmJEUCUBE : Créer une liste avec exclusion d'un membrePersonnellement, j'ajouterai une colonne "A prendre" Oui/Non à ma table client j'ajouterai un MEMBRE.CUBE dans mon VALEUR.CUBE =MEMBRECUBE("ThisWorkbookDataModel";"[Table_Clients].[A prendre].&[Oui]") Stéphane...
17/09/2025 à 12:20ben25000 Une idée pour masquer les cellules qui ne contiennent pas le (1) ?La MFC "blanc sur blanc" peut être simplifiée en =NB.SI(A4;"*"&$B$2)=0 Stéphane...
16/09/2025 à 17:49etienne77QUERY - Fichier CSV - Code avec format Texte et chiffreEn complément, il est aussi possible d'utiliser la fonction Text.TrimStart pour supprimer tous les 0 au début des valeurs textuelles c'est à dire que 0034 deviendra 34 et que 0AZER deviendra AZER = Table.TransformColumns(Source,{{"code", each Text.TrimStart(_, "0"), type text}}) Stéphane...
16/09/2025 à 17:38etienne77QUERY - Fichier CSV - Code avec format Texte et chiffreJe suis d'accord, en général, il faut laisser les 0 en début de code mais sinon, pour supprimer ces 0 non significatifs il est possible d'utiliser la fonction Table.TransformColumns = Table.TransformColumns(Source,{{"code", each try Number.From(_) otherwise _, type any}}) Stéphane...
15/09/2025 à 09:43cousinhub [Power Query] Filtre personnaliséDoublon à supprimer...
15/09/2025 à 09:20cousinhub [Power Query] Filtre personnaliséMerci @cousinhub pour les analyses Une remarque concernant ta réflexion : "Tout comme on a déjà pu voir qu'une simple fusion exclusive était bien plus rapide qu'un filtre avec List.Contains..." J'utilise régulièrement type ce code pour filtrer des tables en ayant testé la performance vs Table.Nested...
12/09/2025 à 14:39Chph51Dans la fonction FILTREEn complément avec ESTNUM+EQUIV afin de ne pas répéter la plage de critère =Filtre(Adherents! $A$1:$E$150; ESTNUM(EQUIV(Adherents! $E$1:$E$150;{"ADO";"CARTE"};0)) on peut mettre les critères dans une plage et y faire ainsi référence =Filtre(Adherents! $A$1:$E$150; ESTNUM(EQUIV(Adherents! $E$1:$E$150...
12/09/2025 à 10:51JB_ Multiplier une matrice par ligne avec BYCOLLa fonction BYCOL n'est pas adaptée dans ce cas voir l'aide en ligne : Ne pas fournir de fonction LAMBDA ou autre chose qu’une valeur unique retournée par la fonction LAMBDA retourne une erreur #CALC. Avec MAKEARRAY par ailleurs Plage_NB;NB*SEQUENCE(;COLONNES(Plage_AN);;0); est équivalent à Plage_NB...
11/09/2025 à 12:28cousinhub [Power Query] Filtre personnaliséJe pense qu'on peut remplacer  if List.Contains({49..57},Character.ToNumber(_)) then "0" else _ par  if List.Contains({"1".."9"},_) then "0" else _ Stéphane...
11/09/2025 à 10:48cousinhub [Power Query] Filtre personnaliséJ'avais aussi imaginé une solution avec Number.From mais il y a au moins une exception (très tordue il est vrai !) avec le caractère infini ∞ = Character.FromNumber(8734) et Infinity is number renverra True et donc un 0 Enfin, d'ici à avoir ce caractère dans une liste de n° de téléphone ! Stéphane...
10/09/2025 à 23:16cousinhub [Power Query] Filtre personnaliséAutre approche en réalisant un List.Accumulate non pas sur chaque ligne une par une mais pour remplacer chacun des chiffres de 1 à 9 par 0 dans la colonne en entier je n'ai pas testé l'efficacité sur une grande base EDIT la gestion en liste de liste peut être intéressante quand on doit remplacer des...
10/09/2025 à 22:27cousinhub [Power Query] Filtre personnaliséMerci du retour ! Je vois que mon pseudo n'est pas inconnu de certain Une autre possibilité Stéphane...
10/09/2025 à 19:12cousinhub [Power Query] Filtre personnaliséBonjour Je suis nouveau venu et je souhaite vous partager une autre approche en testant la longueur, la présence uniquement de nombres et d'espace ainsi que la position des espaces Sinon, - "NN 12 34 56 78" passe le test de JFL1 on peut substituer N par 0 avec donc un remplacement de moins - "01A23...