M

Fanatique d'Excel

Inscrit le :20/07/2015
Dernière activité :14/12/2018 à 13:58
Version d'Excel :2010 FR
Lieu :Réunion
Messages
17'169
Votes
1'467
Fichiers
0
Téléchargements
0
SujetsMessagesStatistiquesVotes reçus

Messages postés par MFerrand - page 254

DateAuteur du sujetSujetExtrait du message
10/06/2016 à 08:55figuedi Recherche trop longue pour ExcelC'est tout simple : F1, i, j, DL2, T1F, T2F, T3R ne sont pas typées, donc de type Variant (ce qui peut par ailleurs accroître le ralentissement). Une variable doit être typée individuellement ! On ne type pas un groupe. [On est sans doute tous passés par là aux débuts, mais ça s'apprend...]...
10/06/2016 à 08:22figuedi Recherche trop longue pour ExcelEn préalable, je te signale que tu as un certain nombre de variables non typées. Toutes les variables non typées individuellement sont de type Variant. Cela peut se rectifier facilement, mais en fait la plupart de tes variables sont inutiles, donc autant assainir. J'aimerais que tu me confirmes que...
10/06/2016 à 08:10ju97 Tranche horairesJe te conseille de prendre le temps d'étudier sérieusement ton domaine d'action et les outils mis en oeuvre ! Tu as un tableau de recherche orienté verticalement et tu fais une RECHERCHEH (horizontale). Tu recherches une valeur proche, ce qui exige que tes valeurs de la colonne de recherche dans la...
10/06/2016 à 07:47pic84Utilisation d'une date variable dans une formule sans VBAOn n'a jamais dit de transformer la valeur de la cellule en texte ! sous réserve que le mois soit entier, si abrégé enlever un m (juin est ambiguë à cet égard). Cordialement...
10/06/2016 à 06:54NossilaRegrouper des lignesDernier volet, la ligne étant connue, il ne reste donc plus qu'à affecter les valeurs. Le plus économique et le plus élégant est toujours d'utiliser une boucle plutôt qu'une énumération fastidieuse cellule par cellule. Ici, les noms spécifique à chaque contrôle empêchait une boucle directe, il y ava...
10/06/2016 à 04:15luis63Arrondi sup impossibleTu l'intègres à tes formules, là où tu veux que ce soit arrondi ...
10/06/2016 à 04:10BP68Copier des cellules verrouillées et protégées avec VBACe que tu dis n'est pas vraiment très clair. Tu as fichier avec un texte sur une feuille de calcul. Ce texte est une copie de macro enregistrée Pour qu'elle fonctionne il faudrait qu'elle soit munie de sa déclaration de procédure et positionnée dans un module. On se demande bien ce qu'elle fait là....
10/06/2016 à 03:12michmuch3856Listbox lienshypertexteSur la ListBox, tu sélectionnes une ligne, et non une colonne particulière sur cette ligne. Rien ne distinguera les cas où tu sélectionnes pour activer le lien de ceux où tu ne le souhaites. Ceci étant, tu peux faire en sorte qu'à la sélection le lien soit activé. Vu la constitution de ta liste, tu...
10/06/2016 à 02:48natouilletteMacro VBA liste deroulante exportEn remettant chemin et fichier dans l'ordre ça marchera mieux. Pour défiler les communes, il suffit d'une boucle. En supposant, que C21 était bien la commune, on fait la boucle sur le numéro de ligne. J'ai mis 2 à 100 pour illustrer, à toi de rectifier. Si cela doit enregistrer des stats propres à c...
10/06/2016 à 01:59vivi69Mélanger automatiquement les codesUn peu plus élaboré à tester: Double mélange, avec une méthode Galopin... Salut à lui ! Cordialement...
10/06/2016 à 01:06pic84Utilisation d'une date variable dans une formule sans VBATout simplement, ton nom d'onglet est du texte, et une date est un nombre ! Evidemment. Si tu ne transformes pas ta date en texte, il n'y a aucune raison que ça fonctionne. Cordialement...
09/06/2016 à 23:55dann Extraction chiffresUne solution dérivative personnalisée : Fonction matricielle : Sélectionner 2 cellules (côte à côte sur la même ligne), taper la formule =EXTRPCENTTXT(A1) , A1 étant la cellule où se trouve la chaîne dont il faut extraire la valeur des %, puis valider par Ctrl+Maj+Entrée, et les 2 pourcentages appar...
09/06/2016 à 22:53NossilaRegrouper des lignesInterruption plus longue que prévue... Je reviens sur le nom domaines défini ainsi : Toutes les lignes message en col. A portent la mention "domaine?". Et les lignes colorées la comportent en col. B. Le nom recouvre donc la colonne A (à partir de la ligne 5) en incluant toutes les lignes qui comport...
09/06/2016 à 21:47KytockxInsertion image en fonction du résultat d'une autreLe contrôle Image implique de faire un export de l'image en la copiant dans un objet Chart temporaire (qui permet cet export) pour pouvoir la réinsérer dans le contrôle avec LoadPicture... Il me semble que la méthode d'appel que tu trouveras est nettement plus simple, et s'avère efficace. Je te reco...
09/06/2016 à 19:48madcatImporter la valeur d'une case d'excels vers un autre ExcelJe suppose que compte tenu du problème posé, ce qui est en amont fonctionne et seul le fragment With... End With est en cause. Cependant, si j'ai bien compris, le répertoire visé étant celui de ton fichier, tu pouvais te passer de cette gymnastique pour simplement définir le chemin à partir de : Thi...
09/06/2016 à 19:07sabrina75005Modèle conceptuel de donnéesBon ! Pas de chance ! J'ai réussi à effacer mon message (et pas le temps de le réécrire en entier). En résumé, hors utilisation d'Excel avec des systèmes plus importants (sur lesquels mes connaissances sont insuffisantes pour en parler...), Excel te permet de construire des tables, les gérer, bâtir...
09/06/2016 à 17:53sabrina75005Modèle conceptuel de donnéesSi tu précisais ton propos : à l'exception de "base de données" qui recouvre un concept relativement clair (bien que cela puisse se décliner de façons très diverses, il reste 4 notions à mieux définir (voire à traduire !) et préciser, et surtout à illustrer de la façon la plus circonstanciée possibl...
09/06/2016 à 15:49jc67Copie de jeux d'icones en VBAPas le temps dans l'immédiat, mais je regarderai dès que possible pour établir une procédure de mise en place du format conditionnel sur le Tableau de bord : ça devrait pouvoir être assez léger, il faut la définir pour une cellule et avec une boucle on la reproduit pour chaque cellule de la colonne...
09/06/2016 à 15:38BlueMountain Garder une variable en mémoire entre plusieurs procéduresLa question des parenthèses : Appel proc. Function : x = MaFonc(arg1, arg2) , la fonction renvoie un résultat, elle est située à droite d'un signe =, les arguments doivent être entre parenthèses. Fonction utilisée sans récupération du résultat, ex. fréquent avec MsgBox (qui est une fonction) : MsgBo...
09/06/2016 à 14:49d.florian VBA - before save et save as - crash ExcelAvec logique : Tu détournes un enregistrement demandé, pour enregistrer mais à ta façon. Tant que tu définis des paramètres à utiliser, aucun problème. Mais quand tu vas enregistrer, tu déclenches une interception de cette nouvelle demande ! Tu interrompts l'interception des évènements le temps d'en...
09/06/2016 à 14:30tifanCréation PDF avec nom déterminéDepuis quand ? Ça exporte ce que tu décides d'exporter ...
09/06/2016 à 01:44patlegain RechercheV décroissantLa valeur maximale de ta table de recherche : lorsque la valeur cherchée dépasse cette valeur une erreur se produit...
09/06/2016 à 01:41BlueMountain Garder une variable en mémoire entre plusieurs procéduresOui il faut vider avant de commencer, mais une seule fois ! Pour ne pas tout perdre : avec Erase compteur tu vides ton tableau et tu t'épargnes 3 lignes. Tu n'es pas obligé d'utiliser le nom de module dans l'appel des procédures, les modules standard sont publics. Sauf dans le cas de dualité de nom...
09/06/2016 à 01:05BlueMountain Garder une variable en mémoire entre plusieurs procéduresS'il s'agit de compteur, tu le vides à chaque appel de la procédure, que veux-tu qu'il contienne ? sinon le résultat du dernier appel ...
09/06/2016 à 00:40BlueMountain Garder une variable en mémoire entre plusieurs procéduresJe ne retrouve pas les noms de proc. que tu citais... Pourrais-tu localiser le problème ? Nom de la variable ? Nom de la procédure ...
09/06/2016 à 00:04Joan066 Rendre inactif le deplacement de celluleY aurait pas une inversion quelque part ? Et si ta procédure Workbook_Deactivate correspond à un évènement, ton activate ne correspond à aucun. Ensuite les évènements sont mal choisis. Il serait nettement plus logique d'inhiber la fonctionnalité à l'ouverture, avec Workbook_Open et de la rétablir av...
08/06/2016 à 23:47valentinLF Grouper l'action sur plusieurs TextBoxOu astuce de contournement, programmer la mise en forme sur l'évènement Enter d'un autre contrôle qui se trouve logiquement après sur le parcours.....
08/06/2016 à 23:32d.florian VBA - before save et save as - crash ExcelC'est pas là qu'il faut le mettre c'est avant ! Tu lances une procédure qui intervient sur une commande de sauvegarde, qui modifie la situation, si tu n'annules pas la finalisation de la sauvegarde, elle plante, les conditions ont changé ! L'erreur n'intervient pas dans la procédure, elle intervient...
08/06/2016 à 23:26eole-33 Insertion de plusieurs lignes dans TextBoxDans l'éditeur, tu sélectionnes ton TextBox, et dans la fenêtre de propriétés tu mets : Multiline à True et EnterKeyBehavior à True. Tu pourras alors mettre du texte sur plusieurs ligne et la touche Entrée te permettra d'aller à la ligne. Cordialement...
08/06/2016 à 23:17Yvouille VBA : Messages d'erreur indésirables...
08/06/2016 à 23:08Yvouille VBA : Messages d'erreur indésirablesC'est en fait l'absence de la commande Cancel = True ( bien vue par h2so4 ) qui provoque le message : la finalisation de la commande double-clic (édition de la cellule) intervenant sur la feuille reprotégée. Cancel = True suffit donc à éliminer le problème. Cordialement...
08/06/2016 à 23:00valentinLF Grouper l'action sur plusieurs TextBoxJe me permets juste une incise : Change intervient à chaque caractère tapé, l'évènement le plus proche de AfterUpdate serait Exit (s'il est disponible dans le module de classe. Sur la mise en forme du texte dans le TextBox, pas de problème elle fonctionnera. Cordialement...
08/06/2016 à 22:46NossilaRegrouper des lignesLa procédure de validation doit comporter 3 éléments : vérification que les conditions de validation sont réunies, recherche du positionnement du message (avec insertion de ligne et sa mise en forme), affectation des données à la ligne. Ces 3 éléments figuraient dans ta procédure (avec quelques insu...
08/06/2016 à 21:43@pat Problème de triPour que le tri fonctionne avec des formules, il faut que la formule soit interchangeable, c'est à dire que tu n'en aies fait qu'une recopiée sur toute la colonne, sinon elle donnera des résultats différents en changeant de place. Cordialement...
08/06/2016 à 21:25maud_summer Application Intersect failedSauf erreur tes 2 plages sont dans des feuilles différentes, je ne vois pas comment tu pourrais avoir une intersection ! Il me semble que tu devrais plutôt tester si la valeur Component se trouve dans Container ...
08/06/2016 à 20:23maud_summer Application Intersect failedRe, Container est une plage, ok. Mais Range(Component) ? Component est une donnée String, et rien n'indique dans ton code que sa valeur désigne un nom de plage...
08/06/2016 à 20:05ano Rester sur la même page pendant l'exécution de la MacroIl n'y a pas de problème là-dedans, VBA fait ce que tu lui demandes, donc le seul responsable... Tu fais disparaître tout Select de ton code, c'est à dire : tu écris vraiment en VBA, et le problème disparaîtra de lui même ! Cordialemnt...
08/06/2016 à 20:00maud_summer Application Intersect failedSi l'affectation est faite avant de l'utiliser, ok ! (si tes références sont correctes) Dans cette ligne, tes expressions sont qualifiées, et si tu avais écrit : tous les Range et Cells seraient pareillement reliés à FL2. Mais quand il n'y a pas de qualificateur ni de point indiquant qu'il y en a un...
08/06/2016 à 19:51BlueMountain Garder une variable en mémoire entre plusieurs procéduresUne variable déclarée au niveau module conserve sa valeur ! Tu n'es pas très clair dans tes explications. Tu sembles multiplier inutilement les variables comme dans Main... et tes appels de procédure incluant le nom de module laisserait entendre (si tu sais ce que tu fais) que tu as privatisé tes mo...
08/06/2016 à 19:37maud_summer Application Intersect failedDans ce code Container n'est pas initialisée, donc erreur logique. Par ailleurs la non qualification est toujours susceptible de générer des imprévus (aucun point devant Range ou Cells impliquant le rattachement à une référence définie, donc référence variable...) Cordialement...
08/06/2016 à 17:01jc67Copie de jeux d'icones en VBAJe n'utilise que peu les jeux d'icônes, mais effectivement les références relatives ne sont pas acceptées dans ce cas. J'ai essayé de tourner avec un nom. Dans la feuille le nom s'adapte selon la ligne, mais la MFC ne considère que la valeur en première ligne pour toutes les lignes ! Je réfléchis si...
08/06/2016 à 16:35NossilaRegrouper des lignesAutre modification qui concerne les 3 TextBox lançant également UpdateTextBox, qui ne devrait pas te déstabiliser : substitution de l'évènement AfterUpdate à Change. Un TextBox est une zone de saisie de texte, et sa procédure Change intervient à chaque changement de valeur, soit à la frappe (ou l'ef...
08/06/2016 à 15:50NossilaRegrouper des lignesOn poursuit par la liste Souscatégorie, on reste dans le même domaine... A cet égard, j'ai omis une remarque dans le précédent post : inutile de faire un .Clear préalable lors de l'initialisation, à l'ouverture c'est tout Clear ! Inutile d'insister. Sauf si tu as affecté une liste par RowSource, mai...
08/06/2016 à 15:21madcatImporter la valeur d'une case d'excels vers un autre ExcelJe n'ai pas suivi le sujet mais : Il y a aussi un autre petit problème : i va rester à 0... et la boucle ne va pas s'arrêter ! Tu ferais bien d'indenter ton code, et d'utiliser la balise Code dans le post... Cordialement...
08/06/2016 à 15:07jc67Copie de jeux d'icones en VBAIl me semble que le plus simple serait de créer la MFC équivalente dans ton Tableau de bord pour la colonne F enrapport à la colonne D. Tu n'as à le faire qu'une fois. Pour les feuille projets, si tu les crées par duplication, la MFC sera aussi dupliquée. Voir la façon dont tu les génères, si par ma...
08/06/2016 à 14:53NossilaRegrouper des lignesUn petit lot d'explications sur ce qui a changé par rapport à ton code antérieur (pour autant que mes souvenirs soient encore assez frais...). Le formulaire s'ouvre à partir de ton bouton de commande, rien de changé jusqu'ici. Le chargement du Userform lance la procédure Initialize. Il y a quelques...
08/06/2016 à 13:37madcatImporter la valeur d'une case d'excels vers un autre Excel...
08/06/2016 à 13:16madcatImporter la valeur d'une case d'excels vers un autre ExcelDossier (=Répertoire) = subdivision d'un lecteur sur un disque dur (ou assimilé) [lecteur = partition ou volume nommé d'un disque dur formaté] fichier EXCEL = Classeur [avant Excel4, donc dans les années 80 aux tout débuts d'Excel, un fichier se limitait à une feuille de calcul, il est d...
08/06/2016 à 12:33madcatImporter la valeur d'une case d'excels vers un autre ExcelBien pour le au temps ! (et non autant ). Tu vois donc que tu peux parfaitement y parvenir !! Bonne journée...
08/06/2016 à 12:30tifanCréation PDF avec nom déterminéPourquoi n'exportes-tu pas ton PDF directement à partir d'Excel ...