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 40

DateAuteur du sujetSujetExtrait du message
08/07/2018 à 18:09ramsapat Transfert textbox vers ligne tableauSi tu es dans un userform, le point devant Controls est de trop ou mettre Me.Controls car Controls ne doit pas référer à la feuille sous bloc With...
08/07/2018 à 17:57caruntaRotation d'équipeJe te livre un premier essai, je ne sais si je colle avec tous tes critères... Commençons par les modifications que j'ai apportées à ta feuille : introduction de colonnes (masquées : il me faut stocker les données veille ainsi que le tirage jour, qui sera basculé en veille lors d'un nouveau tirage j...
08/07/2018 à 13:13dashilProbléme de plantage à cause du code VBAJuste pour t'éclairer sur la "béquille" (si je puis m'exprimer ainsi) que t'a tendue Thev (avec un objet source), mais dont tu peux te passer... et expliciter les remarques afférentes de mon premier post sur ton sujet. Un tableau Excel est un objet ListObject en VBA. On atteint cette objet par : dès...
08/07/2018 à 11:35ANASS1 Exporter vers un nouveau classeurTu récupères le contenu de ta ListBox par : Tu affectes par (par exemple) : NB- En passant par le contenu de la ListBox, tu n'as évidemment pas la ligne d'en-tête de ta plage source. Si tu tiens à l'avoir, tu ne récupères pas à partir de la ListBox mais tu remontes à la plage source ! J'ai fait l'im...
08/07/2018 à 02:07dashilProbléme de plantage à cause du code VBAJe ne pense pas que ce soit un bon choix. Tu t'interdis une utilisation efficace du tableau, qui te pemettait de largement simplifier ton code... Mieux vaudrait supprimer la liste pour la réintroduire ensuite, dès lors que la ListBox sert à quelque chose, mais de plus comme en l'état elle n'a strict...
07/07/2018 à 18:36caruntaRotation d'équipeOk ! Il reste qu'au départ, il faut connaître les absents. Comment ? (NB- les absents vont modifier les compétences par poste, donc modifier éventuellement l'ordre logique des postes lors du tirage.) En outre, si on dispose de 24 personnes, chacun se retrouvera sur un poste lors des 4 rotations. Si...
07/07/2018 à 17:08caruntaRotation d'équipeJe ne vois pas comment tu signales les absents ! En tout état de cause, si tu as 24 postes à couvrir avec 28 personnes, tu ne saurais avoir plus de 4 absents ! Et dans la mesure où il faut opérer par compétences, à cet égard déjà pour le poste 1 un problème se pose puisque seulement 4 compétents. Tu...
07/07/2018 à 13:21dashilProbléme de plantage à cause du code VBAJe ne sais si tu as testé que l'erreur provenait bien de la ListBox... Je n'ai pas cherché à le faire, mais à l'expérience les probabilités plaident dans ce sens... Il y a de quoi faire quelque chose de cohérent avec le dispositif mis en place, mais il faudrait savoir où l'on veut aller exactement....
07/07/2018 à 12:26dashilProbléme de plantage à cause du code VBAJ'ai quelques hésitations à intervenir sur ton sujet ! D'abord parce que tu commences déjà à donner dans le gigantisme des formulaires, le tien ne peut s'afficher entièrement sur mon écran, c'est toujours quelque peu gênant pour travailler... (d'autant que lorsque la taille d'un formulaire dépasse l...
07/07/2018 à 10:24minrae994Macro pour limitation de caractère et suppression du "en trop"Oui. Ou il peut reprendre sa formulation initiale qui lui évite de rajouter un End If : Ou bien, il peut fusionner avec ta proposition de traitement de plusieurs cellules (Target pouvant être multicellulaire). Dans ce cas il supprime la limitation à 1 cellule : If Target.Count > 1 Then Exit Sub e...
07/07/2018 à 01:20Bertrand89Intercaler automatiquement des images à la suite & éviter superpositionA cette heure le code à base d'enregistrement (Select), mal indenté, intercalant de plus de nombreuses lignes vides, me fatigue vraiment ! Les images, de même que tous les objets Shape s'insèrent sur une feuille (et pas dans une cellule ou une plage), il convient de les positionner là où on veut les...
07/07/2018 à 00:57atloniaProblème plusieurs UserForm ?Je dois dire que voir deux modules pour y placer dans chacun la procédure de lancement d'un Userform me découragerait plutôt de fournir la moindre explication ! D'autant plus que l'intitulé : Format de valeur dans une TextBox est un abus de langage. Cela incite à assimiler le format de valeurs affec...
06/07/2018 à 23:58minrae994Macro pour limitation de caractère et suppression du "en trop"Tu rétablis ta ligne limitative avant la ligne : tx = Target Mais l'absence de limitation ne l'empêche pas de fonctionner, elle fonctionne pour toutes les cellules, lors de la validation de ta saisie...
06/07/2018 à 23:31minrae994Macro pour limitation de caractère et suppression du "en trop"Une procédure pour limiter à 60 caractères, sans couper de mot : NB- J'ai mis la longueur max. voulue en constante Lmax en début de procédure. Si on veut changer cette longueur max. il suffit de modifier la valeur de cette constante. Je n'ai pas repris la limitation à une plage, qui était F9:F38 dan...
06/07/2018 à 22:45VDMICHEL Tri personnalisé et particularitésJ'ai "modernisé" ton tri, on peut défiltrer sans supprimer le filtre, et ainsi pas besoin de le rétablir ensuite, dimensionner aussi la zone à trier sur D plutôt que E qui excluait une partie du tableau (ainsi qu'inclure la ligne d'en-tête puisque tu indiquais qu'il y en avait une), et d'autre part...
06/07/2018 à 20:18Paul29718Combobox double niveauJe ne vois pas ce qui pourrait l'empêcher ...
06/07/2018 à 20:11VDMICHEL Tri personnalisé et particularitésCordialement...
06/07/2018 à 16:54azkaetValeur auto Drop Down ListTu as bien fait de le préciser car j'aurais parié sur By when ? Cordialement...
06/07/2018 à 16:43Towelie VBA - C/C formules ligne dont n° variableTon erreur provient d'une mauvaise syntaxe, c'est la propriété Rows ....Rows(li1)... qui renverra un objet Range, la propriété Row est destinée à renvoyer un numéro de ligne. Pour le reste ton code est incomplet (prendre l'habitude d'inclure les déclarations de procédure lorsqu'on cite un code, cela...
06/07/2018 à 16:23azkaetValeur auto Drop Down ListUne date entrée où ...
06/07/2018 à 16:09Theophile69Evénement Worksheet ne fonctionne pasSi elle ne se lance pas, c'est soit que tu ne produis pas l'évènement attendu, soit que les évènements sont désactivés (ce qui implique qu'une procédure les a désactivés), soit que tu es en mode arrêt suite à une erreur d'exécution, dont tu n'es pas sorti (dans ce cas aucun code ne peut s'exécuter)...
06/07/2018 à 16:01CmMiro Calendrier semaine isoJe ne suis pas en état de faire des choses trop compliquées ou qui demandent de la réflexion... c'est donc un bon dérivatif. Calendrier présenté comme sur ton image, les mois indiqués de B1 à M1, les jours de A2 à A32, et l'année comme il ne reste plus qu'une cellule utilisable, en A1. En modifiant...
06/07/2018 à 14:36FlavienP Probleme de formatDésolé mais je ne peux m'empêcher de penser : Quelle bouillie ! Quand on veut une date, on met une date, la façon dont on l'affiche est l'affaire du format de cellule. A partir du moment où l'on n'a plus une date, cela peut donner tout et n'importe quoi. Mais c'est un bon choix pour se créer des pro...
06/07/2018 à 14:18Theophile69Evénement Worksheet ne fonctionne pasCe qui ne te dispensais pas de répondre directement à la question ! Enfin...! Je suppose que tu as testé que tu entres bien dans l'exécution de ta procédure lors de l'activation de la feuille Facturation, c'est toujours une vérification à faire, pour s'assurer qu'on y entre et circonscrire le code q...
06/07/2018 à 14:08ThéoDelh ComboBox1_Change exécuté seulement après la fin de la saisie / UserFormSi tu trouves que c'est assez clair, tu fais avec ! Pour ma part je suis totalement réfractaire aux velléités d'un demandeur de téléguider ma réponse. Je constate le problème, comme St Thomas ! , et je recherche les moyens d'aboutir à la situation souhaitée à partir de la situation de départ, dès lo...
06/07/2018 à 13:49Theophile69Evénement Worksheet ne fonctionne pasCe que l'on peut dire alors, c'est que cette procédure se déclenchera à l'activation de la feuille concernée, dont on ignore toujours quelle elle est ! (Et aussi qu'un apprentissage minimum de l'utilisation de boucles t'éviterais de produire des pavés d'autant plus indigestes que ton code n'est pas...
06/07/2018 à 13:13Theophile69Evénement Worksheet ne fonctionne pasAvant de regarder ou de lire quoi que ce soit, tu présentes une procédure d'évènement Worksheet, qui ne peut s'exécuter que si la procédure se trouve dans un module de feuille de calcul (lequel ? rien ne l'indique). Mais en tout cas il ne s'agit pas d'évènement Workbook ...
06/07/2018 à 13:06ThéoDelh ComboBox1_Change exécuté seulement après la fin de la saisie / UserFormJ'ai bien noté que Galopin avait tenté de te diriger vers une orientation un peu plus rationnelle ! Mais comme cela n'a guère l'air de faire effet d'une part, et que d'autre part tu nous présentes un Userform muni d'une Combo dépourvue de liste et d'une TextBox en nous racontant un problème ésotériq...
05/07/2018 à 20:37KhemRaccourci clavier pour continuer une liste...
05/07/2018 à 20:18ThéoDelh ComboBox1_Change exécuté seulement après la fin de la saisie / UserFormAprès examen, le problème que tu indiques n'apparaît nulle part ! De toute façon, tel que tu le décris, il ne pourrait résulter que d'une erreur de programmation... Et à ce moment là, il te faut revoir ton code. Mais encore faudrait-il que le problème dse produise ...
05/07/2018 à 19:47KhemRaccourci clavier pour continuer une listeLa recopie incrémentée fonctionne pour les jours de la semaine ou les noms de mois car ils font partie de listes personnalisées dans Excel. Cordialement...
05/07/2018 à 18:26apprentissage Menu déroulant dans userformeEnfin la procédure d'affectation : Selon ton code antérieur, seules les saisies dans les Combo CB1, CB2 et CB3 sont considérées comme obligatoires. J'ai conservé les 3 lignes qui opèrent ce contrôle mais il faudra compléter si tu considères d'autres saisies comme devant être obligatoirement faites p...
05/07/2018 à 17:43apprentissage Menu déroulant dans userformeVenons-en maintenant aux sélections dans les listes d'opérateurs : Une procédure Change renvoie à une proc. : NbOpér. Même chose pour les 4 autres Combo. Pour TB3 (opérateur 6), évènement AfterUpdate plutôt que Change (qui se déclenche à chaque touche frappée...) La procédure appelée calcule le nomb...
05/07/2018 à 17:37apprentissage Menu déroulant dans userformePour ce qui est des procédures Change de CB1 et CB2, lesquelles mettent en place les listes de CB2 et CB3 respectivement, l'utilisation du nom BBato ne modifie pas la méthode de constitution. Seul élément que j'ai rectifié, l'insertion d'un caractère 160 (espace insécable) lorsque le ListIndex de la...
05/07/2018 à 16:57apprentissage Menu déroulant dans userformeLa procédure Initialize reprend la constitution de la liste de CB1 qu'elle faisait déjà, et s'y ajoute la constitution des listes des ComboBox opérateurs. Ce que je n'ai pas conservé du code antérieur, l'instruction End (cette instruction, y compris dans les autres procédures où elle était utilisée)...
05/07/2018 à 15:59apprentissage Menu déroulant dans userformeJ'attaque les explications : 1) Plages nommées : Comme je l'avais déjà indiqué, j'ai nommé la première colonne de ta base : BBato Ce nom réfère à : Comme tu le vois, on utilise une formule pour donner un nom dynamique. On utilise la fonction DECALER en prenant pour base la cellule supérieure gauche...
05/07/2018 à 12:37apprentissage Menu déroulant dans userformeL'utilisation du CodeName sert en effet à travailler avec des feuilles dont les noms sont susceptibles de changer. Mais comme je l'ai dit, en utilisant des noms de plages, outre le même avantage, on se passe carrément des feuilles ! Et on simplfie les procédures d'affectation. Un Userform n'est jama...
05/07/2018 à 08:37apprentissage Menu déroulant dans userformeQuestions complémentaires : Opérateur 6 : figure dans J2 mais pas dans Userform ? A l'inverse, Temps de phase et Pause figurent dans Userform, mais pas dans J2 ? Temps de phase est peut-être le Temps de référence de la base ? Clarifier ces éléments...
05/07/2018 à 08:06apprentissage Menu déroulant dans userformeUn petit débroussaillage préalable. La déclaration d'un bon nombre de variables (type Worksheet et Range) niveau module du Userform, qui n'ont en fait pas de rôle particulier dans le fonctionnement interne du Userform mais ne visent qu'à pallier des difficultés d'adressage ne sont pas ce qu'il y a d...
04/07/2018 à 19:36apprentissage Menu déroulant dans userformeTu confirmes mon appréciation ! Job75 oeuvre sur un autre forum mais j'ai cependant déjà eu le loisir de lire quelques uns de ses codes qui apportaient des solutions particulièrement pertinentes... J'ai d'ailleurs eu l'occasion de l'exprimer il y a pas mal de temps, mais je ne me souviens plus si c'...
04/07/2018 à 17:27apprentissage Menu déroulant dans userformeCette fois, je ne peux que te donner raison... ! Cela provoquera sans doute des difficultés par la suite, mais il faut peut-être en faire l'expérience pour s'en persuader... Le concepteur du code en a toutefois tiré partie... Bon ! "mes" chats s'impatientent vraiment ...
04/07/2018 à 17:22pagesalex Select case sans ordre alphabetique"Mes" chats s'impatientent leur service restauration a du retard ...
04/07/2018 à 17:15pagesalex Select case sans ordre alphabetiqueEtant visé, je vais donc te faire remarquer quelques petites choses à partir de ton dernier code cité : Bien que sous balises Code (contrairement au premier cité), il est au moins en partie reproduit, c'est à dire ne provient pas d'une copie dans un module, et on n'y trouve pas en plusieurs points l...
04/07/2018 à 16:49apprentissage Menu déroulant dans userformeVu ton fichier... C'est effectivement un peu plus clair ! Une remarque préalable d'abord : en guise de base de données, tu as un tableau de données, dès lors que tu introduis des cellules fusionnées tu ne pourras plus utiliser fonctionnellement ta base comme base de données à part entière. Tu as don...
04/07/2018 à 15:10gametexxxVBA> Coller une plage de cellules sur ExcelA condition de ne s'en servir que comme test de syntaxe, pas pour écrire le code dont la qualité n'est pas la première vertu lorsqu'il est enregistré. gametexxx : ce qui m'avait intrigué c'est ta fusion finale... J'ai donc écrit pour qu'il fonctionne dans le cas où ta plage copiée était fusionnée, m...
04/07/2018 à 14:59apprentissage Menu déroulant dans userformeTout ça est quelque peu confus et embrouillé ! Des listes-cascades sont des listes de choix dépendantes les unes des autres, et impliquant que des choix se fassent successivement dans un ordre donnée : on fait un choix1 dans la liste1, ce choix va conditionner la composition de la liste2 pour le cho...
04/07/2018 à 14:35gametexxxVBA> Coller une plage de cellules sur ExcelFAUX ! Le fait que désigner la cible du collage par la cellule supérieure gauche de la plage soit plus avantageux et évite des erreurs, n'implique nullement que le collage ne fonctionnerait pas en sélectionnant toute la plage cible. NB- Paste (et non past) est une méthode de l'objet Worksheet, pas u...
04/07/2018 à 14:22pagesalex Select case sans ordre alphabetiqueC'est que tu ne l'as pas relu ...
04/07/2018 à 14:13apprentissage Menu déroulant dans userformeC'est bien toi qui a écrit ceci ? Tu prétends donc ne pas savoir faire une opération élémentaire nécessairement inclue dans une opération plus élaborée que tu prétends savoir faire !!! Avoue que quelque chose ne va pas ! Ensuite, s'il est question de UserForm, un fichier xlsx n'est guère adéquat......
04/07/2018 à 13:58pagesalex Select case sans ordre alphabetiqueRelis ce que tu as écrit ! Teste-le si besoin... ...