Fanatique d'Excel

Inscrit le :07/02/2010
Dernière activité :Aujourd'hui à 07:44
Version d'Excel :2021fr
Messages
12'788
Votes
1'985
Fichiers
0
Téléchargements
0
SujetsMessagesStatistiquesVotes reçus

Messages postés par eriiic - page 234

DateAuteur du sujetSujetExtrait du message
27/07/2013 à 18:42glamcerise Création d'un calendrier qui se mette à jour chaque annéeA partir de ton exemple, juste avec des formules et des MFC. J'ai mis en vert les cellules où les formules changeaient. Les autres sont obtenues par tirage, ou copier-coller de plage (A6:H10 se copie sur les autres mois). Il te reste les MFC à terminer, je n'ai fait que les 4 premiers mois. eric edi...
26/07/2013 à 18:080Amine0Tableau indexé par des mots clésTu as les Dictionary Faire une recherche dessus. Entre autres : http://boisgontierjacques.free.fr/pages_site/Dictionnaire.htm Par contre une Key ne peut avoir qu'un seul Item. A toi de bricoler si tu veux associer plusieurs données (plusieurs Dictionnary ou bien des valeurs séparées par des "," que...
26/07/2013 à 16:50Mariachi301 TranspositionUne proposition en vba. Configurer la feuille param. A tester en réel, on a parfois des surprises sur un copier-coller du web. Joindre un fichier si pb. eric...
24/07/2013 à 22:56Fred35 Croisement de données dans un tableauNouvelle version. A retester intégralement du coup. Car bien sûr quand on modifie car les conditions ont changées, ce qui marchait bien avant peut être touché et merdouiller ... eric...
24/07/2013 à 17:04LikesmetalOprimiser rapidité d'un programmeSi ça peut t'aider 2 syntaxes pour trouver dernière ligne ou dernière colonne utilisées : derlig = Sheets(nomFeuille).Cells.Find("*", , , , xlByRows, xlPrevious).Row dercol = Range("B1:IV12400").Find("*", , , , , xlPrevious).Column derlig : sur toute la feuille, dercol : sur une plage restreinte de...
24/07/2013 à 13:11LikesmetalOprimiser rapidité d'un programmeUn peu de mal car je ne pratique pas les macros sous word mais j'ai réussi à faire tourner. Si ton but est de coller avec liaison une plage du fichier excel ça ne serait pas plus simple de la définir et de coller en une fois sans faire tes boucles ? Sur les 2 tests faits, ça copie l'intégralité de l...
24/07/2013 à 12:26Fred35 Croisement de données dans un tableauCa ne te rappelle pas une question que je t'ai posée plusieurs fois sans avoir de réponse ? Si tes états ont plusieurs lettres et que l'un est inclus dans l'autre. Ex: OK et NOK eric J'aurais préféré avoir une réponse à ce moment là, quand j'avais le problème bien en tête... Continue les tests et fa...
24/07/2013 à 08:52Fred35 Croisement de données dans un tableauJ'avais fait un edit au post de 22:01. Tu avais vu le changement pour la zone 'critères' ? Elle est dynamique. "Marque" peut être n'importe où sur BD!5:5. eric...
24/07/2013 à 00:15Fred35 Croisement de données dans un tableauTu as regardé trop tôt... Nouvelle version bonus : un double clic sur 'inconnu' filtre BD sur les produits ayant un état inconnu. eric...
23/07/2013 à 23:01Fred35 Croisement de données dans un tableauTout à fait. Reste le cas litigieux du "A B" A contrôler. eric edit: modif apportées. - plus besoin de définir la zone 'critères'. Elle est dynamique. Commence en B4 sur 2 lignes. Ne pas sauter de colonne, ne rien mettre sur la ligne 4 après le dernier critère. - possibilité d'ajouter un critère 'in...
23/07/2013 à 17:36LikesmetalOprimiser rapidité d'un programmeTu ne peux pas mettre un .doc et un .xls avec ce qu'il faut pour que ta macro tourne si tu veux qu'on teste ? eric...
23/07/2013 à 17:27grm Filtre tout bête ExcelTu ne peux mettre qu'un seul filtre sur une feuille, et là tu en veux 6. Mets-en un sur l'ensemble de tes colonnes, même s'ils ne te servent pas tous. eric...
23/07/2013 à 12:45Fred35 Croisement de données dans un tableauSi tu mets plusieurs états dans BD ça n'a plus rien à voir avec ta demande initiale.. Ca ne risque pas de marcher... Pour la macro "A ", "B ", "A B", "ABCF" et "NSTOK" sont 4 états différents. Et dans ta demande les états n'étaient pas suivis d'espace... eric...
23/07/2013 à 11:52Fred35 Croisement de données dans un tableauJe ne vois pas de fichier de test... Transforme un tableau (3,10) en tableau(10,3) Utilisé car en vba tu ne peux agrandir un tableau avec Redim Preserve que sur la dernière dimension. Donc si tu as un tableau dont tu désires augmenter les lignes au fur et à mesure du besoin, il doit être de la forme...
23/07/2013 à 09:14Fred35 Croisement de données dans un tableauSi tes états ont plusieurs lettres et que l'un est inclus dans l'autre. Ex: OK et NOK Pas sûr de bien comprendre ta question. Un tableau a plusieurs dimensions. Par exemple 2 : dim tabl(10,3) Ce tableau fait 10 lignes et 3 colonnes. Si tu veux l'élément 3 de la 5ème ligne: a= tabl(5,3) eric...
22/07/2013 à 12:49Fred35 Croisement de données dans un tableauUn essai en vba, tu as juste à choisir dans ta liste déroulante. Respecter le mode de saisie des critères en B4:F5 Théoriquement tu peux en rajouter mais je n'ai pas testé. Nommer la plage des critères 'criteres'. Bien optimisé, même pour 50000 lignes (un hasard, tu as de la chance ). Tu diras le te...
22/07/2013 à 00:28fartouTravailler sur un fichier très importantTu peux y aller sans problème. Un fichier ne devient lent que s'il y a beaucoup de calculs. Ce sont surtout les formules matricielles qu'il faut éviter en trop grand nombre ou sur de trop grandes plages. A l'ouverture ou à la fermeture il faut bien que les choses se fassent. Ca sera du domaine de ra...
21/07/2013 à 20:16gna Calcul de délai d'intervention avec plage horaires et joursUne fonction que j'avais faite, que j'ai un peu modifiée. Tu peux définir 4 plages différentes pour chaque type de jour : lundi à dimanche + férié. J'ai mis tes données sur mon classeur car j'avais trop de lenteurs sur ton fichier de 11:04. eric...
21/07/2013 à 14:21Coco_locoSolveur VBAJe ne pratique pas suffisamment le solver en vba pour t'aider beaucoup. D'autant plus qu'on ne sait pas trop dans quel ordre tu enchaines tes différentes procédures. Si tu dis que la formule soit dans le code est suffisant pour que ça fonctionne je veux bien te croire. Un lien intéressant et complet...
21/07/2013 à 10:20herigorMenu déroulant prise 2Tu peux en rajouter tant que tu veux tant que tu respectes le même format en B:D, et que tu ajoutes son nom en F (sans suter de ligne). Et c'est dur la vie de sans-papier... Il affiche un code erroné car ta formule n'est pas correcte. Pour rechercher un libellé exact il faut mettre le 4ème paramètre...
21/07/2013 à 01:32Coco_locoSolveur VBATu n'as pas de formule en L10, il n'a rien à calculer. Il en faut une qui utilise L3:L4 (indirectement si tu veux) Essaie déjà de le faire marcher en manuel, après tu l'automatiseras en vba si besoin. eric...
19/07/2013 à 23:33tofer1989 Fonction SUMPRODUCT ; utile dans ce cas?Oupsss, excuse. J'avais mis ta formule sur mon fichier pour valider mes résultats, et j'étais d'accord avec. Plus tard en regardant ton fichier je n'ai vu que D avec un résultat différent , sans en contrôler le contenu. Pas vu que tu étais en G... Désolé pour la fausse alerte. eric...
19/07/2013 à 18:10Max78__Formule DATE sans les joursSi google ne prend pas en charge ce format d'affichage essaie de te fabriquer la chaine. Sur excel ça serait, avec ta date en A1 : =texte(A1;"mm aaaa") ou mmm ou mmmm selon que tu veuilles 4, avr. ou avril eric...
19/07/2013 à 17:23tofer1989 Fonction SUMPRODUCT ; utile dans ce cas?Re, J'savais bien que r@chid allait trouver la formule qui va bien... Par contre tu as oublié la validation matricielle sur le fichier R@chid. Un peu plus tard une proposition par macro, pas le temps de finir et je dois m'absenter eric Re, Proposition en vba. Les données sont sensées être triées par...
19/07/2013 à 16:08tofer1989 Fonction SUMPRODUCT ; utile dans ce cas?Tu as tout à fait raison, je me suis arrêté à mi-parcours. Je reviendrai dessus plus tard, si tu n'as pas eu d'autres réponses avant. Par formule ça va être complexe. Tu fais une allergie aux macros ? eric...
19/07/2013 à 15:21alexflo38Simplification de formulesUne proposition en vba, ça devrait être assez rapide sur 10000 lignes. Je me sers de la colonne rang pour mettre un aléatoire départageant les exæquos. eric...
19/07/2013 à 14:24jasserin Sous total des lignes visibles apres tri automatiqueBien que l'aide soit claire, c'est vrai l'essentiel est noyé dans l'ensemble. SOUS.TOTAL(), quelle que soit la fonction , ne tient pas compte des lignes filtrées . Si fonction+100 : ne tient pas compte des lignes filtrées , ni des lignes masquées manuellement . Ne prend donc en compte que les lignes...
19/07/2013 à 14:06tofer1989 Fonction SUMPRODUCT ; utile dans ce cas?Tu as bon, sauf que pour excel Février n'est pas un mois. Par contre =Mois(Février 13) sera le mois 2. J'ai modifié ta liste déroulante en ce sens, en mis un format personnalisé en B1 pour ne faire apparaitre que le mois. J'ai complété aussi la formule en E4 pour les #DIV0. La formule est donc : Que...
19/07/2013 à 13:47herigorMenu déroulant prise 2Il me semble que c'est ce que fait le fichier joint à ma dernière réponse. Commence par faire une recherche sur google, ça devrait être le 1er réflexe. Il y a des centaines réponses. Si tu n'y arrives pas il sera temps de démarrer une nouvelle question spécifique. eric...
19/07/2013 à 10:49ced_le_dingueConvertir n* semaine en dateJe ne vois pas de problème. Le principe est de se baser sur le 04/01 qui est toujours en semaine 1, et de calculer le lundi qui lui correspond. Les autres lundi sont à (n°_semaine -1)*7 eric...
18/07/2013 à 16:48herigorMenu déroulant prise 2Re, Pourquoi ne pas avoir dit que tu ne voulais que la colonne D alors ? eric...
18/07/2013 à 10:12herigorMenu déroulant prise 2Une proposition. Sur Client il faut faire la liste des clients à partir de F2, et défusionner les noms des clients en B:C (je l'ai fait pour 3) eric...
18/07/2013 à 09:22marion31Fichier Excel globalEn quoi es-tu obligée d'avoir des cellules fusionnées ? Ca met toujours le bazar et c'est à fuir tant que possible. Dans les titres éventuellement Si ça n'existait pas tu ferais sans... D'autant plus que là elles sont injustifiées, les 2ndes lignes sont obligatoirement vides, tu peux les supprimer....
18/07/2013 à 09:10ced_le_dingueConvertir n* semaine en dateLundi de la semaine : année en A1, le n° de la semaine en B1 : Fonction en VBA : Attention à weeknum, selon les paramètres le n° de semaine peut-être erroné. Dans ce cas tu ne retombera pas sur tes pattes... La formule et la fonction travaillent avec des semaines ISO. eric edit: +2 pour le mercredi...
17/07/2013 à 20:23Edouard151 Problème de format de l'heureLe principe est de récupérer les données dans un tableau en mémoire ( 3 colonnes) avec : data = [A2].Resize(derlig - 1, 3 ) Beaucoup plus rapide que de lire les cellules une par une. Ensuite utilisation d'un Dictionary pour avoir une liste sans doublon des noms, et stocker l'heure de connexi...
17/07/2013 à 17:37Edouard151 Problème de format de l'heureRe, Je n'ai pas trop regardé ton code. J'ajoute donc la durée en colonne G. Si plusieurs connexions avant déconnexion, je calcule par rapport à la première. Code dans le module de la feuille. Regarde si ça va. eric...
17/07/2013 à 16:47AnaF Figer dynamiquement différentes lignesC'est une macro. Faire Alt+F11 pour voir le code. Ici dans le module Feuil1, à copier-coller dans le module de la feuille concernée. La macro est appelée à chaque sélection de cellule. eric...
17/07/2013 à 13:27AnaF Figer dynamiquement différentes lignesAu début je pensais me baser sur un attribut distinct que tu aurais mis aux titres et sous-titres (taille, couleur police ou Style Titre par exemple), finalement je préfère opter pour une colonne supplémentaire. teste et dis. eric...
17/07/2013 à 12:07marion31Fonction si et find9 questions, 1 réponse... bye bye eric...
17/07/2013 à 12:00Edouard151 Problème de format de l'heureSélectionner... Vraiment ? Pas plutôt les mettre en couleur ou les copier ailleurs ? Lesquelles ? Il y a une liste des noms qcq part ? Ou bien tous les noms qui répondent aux critères ? Si tu pouvais mettre le résultat voulu et donner des explications complètes et précises . Mets au moins 2 noms. Et...
17/07/2013 à 01:25Fred78160 Ajouter une formules matricielles dans une macroSOMMEPROD ce n'est pas anglais. Essaie avec sumproduct() ou sinon valide ta formule en enregistrement de macro pour avoir la traduction. eric...
17/07/2013 à 01:22KiKi47 Date du premier jour de la semaine en VBARe, il s'agit d'une fonction à mettre dans un module Standard (Module1 par exemple). En VBA tu l'appelles ainsi : datLun = lundiSemaine(2013, 29) et tu as en retour la date 15/07/2013 Syntaxe sur une feuille : =lundiSemaine(A2; B2) N'oublie pas de mettre en résolu le post avec la réponse. eric...
16/07/2013 à 20:20KiKi47 Date du premier jour de la semaine en VBAEric...
16/07/2013 à 20:05Edouard151 Problème de format de l'heureTu n'as pas plutôt un fichier de test avec des données sur qcq lignes (représentant les différents cas) et la macro si tu veux qu'on regarde ? eric...
16/07/2013 à 19:54marion31Fonction si et findIl faut être plus précise sur le fonctionnement. Déjà une fonction s'inscrit dans une cellule et retourne une valeur. Ce n'est pas plutôt une procédure que tu veux ? Que veux-tu dire par là ? Si la valeur est en colonne C, on sait où elle est... (?) Et pour faire un find il faut savoir ce que l'on c...
16/07/2013 à 19:42Fred78160 Ajouter une formules matricielles dans une macroEn vba il faut utiliser les fonctions en anglais, et utiliser le séparateur , au lieu du ; Tu peux utiliser l'enregistreur de macro pour traduire les fonctions. Pour une fonction matricielle ça sera .FormulaArray, sans mettre les { } Tu peux aussi mettre ta formule dans un nom calculé (la bonne cell...
14/07/2013 à 12:37bruno9442MFC VBA joursem et fèriésProtéger la feuille ne te plait pas ? eric...
14/07/2013 à 12:28Peppone31Faire une synthèse de déplacementsPour un début tu t'attaques à du lourd... Il faut voir en premier lieu comment organiser tes tables de données. J'ai démarré qcq chose en ce sens hier soir, mais comme je vois que depuis tu as posté sur d'autres forums je préfères m'arrêter là. J'ai horreur de bosser pour rien sans le savoir, d'auta...
14/07/2013 à 12:01bruno9442MFC VBA joursem et fèriésIl faut aller la chercher pour la supprimer une MFC, ce n'est pas une formule dans une cellule. Ce n'est plus être novice, c'est du vice là... Ca tiendrait plus du sabotage. Je crois que tu cherches à te compliquer la vie pour pas grand chose non ? eric...
12/07/2013 à 23:38Atchoumdusoleil Récupérer la valeur de la cellule précédenteOu bien : qui n'est pas limité à la colonne Z eric...