Supprimer une ligne dans une ListView ?
C'est bon, ça passe, voici mon nouveau fichier que je soumet à votre expertise...
J'ai réglé les problèmes de tirage Tat et Triplette.
J'ai ajouté une feuille "A_Revoir" ou j'ai listé tous les points à retravailler.
La feuille "A_Faire" liste les programmations qu'il me reste à faire
Voici mon fichier :
Je compte sur vous pour être critique et me dire ce qui n'est pas bon et ce que je peux encore améliorer.
Merci....
Bonjour Dan,
Je suis un vrai étourdi...
J' avais tout réorganisé, fier de moi, j'ai fermé mon travail sans l'enregistrer et décidé de faire le ménage dans mes fichiers...
Du coup, j'ai posté un mauvais fichier, je m'en suis rendu compte quand j'ai rouvert celui qui me restait.
J'ai donc décidé de recommencer, J'ai édité le post précédent pour remplacer le fichier.
Celui que j'ai mis fonctionne bien sur les 3 tirages.
Je vais refaire l'organisation et vous l'envoie dés que possible.
Bonjour
J'ai repris votre fichier et vais d'abord regarder les points de la feuille "A revoir". Etes-vous ok sur ce point ?
Point 1 : je suppose que vous parlez de la feuille Membres. Là c'est assez simple. Il suffit d'utiliser le thème de couleur du tableau structuré. Vous obtiendrez plus ou moins un bon résultat
- Sélectionnez le tableau depuis A2 jusque R54
- dans le menu Accueil, cliquez sur l'icone "Couleur de remplissage" (pot de couleur)
- choisir "Aucun remplissage"
Et aussi comme je vous ai déjà dit, pas de lignes sans données dans un tableau structuré
Point 2 : Pour la combobox, sélectionnez la combobox civilité et mettez la valeur MATCHENTRY sur 1. Cela vous obligera à utiliser ce qui est dans la liste
Autre chose, les codes votre userform Gestion dans votre dernier fichier (version 1) ne correspondent plus à ceux que je vous avais donnés et qui étaient dans le premier fichier que vous avez posté. Là ce sont les anciens codes qui l'on avait modifiés suite au tableau structuré. Donc ce n'est plus bon du tout. On dirait que vous avez effacé les userform qui étaient renommées OLD. Votre premier fichier était mieux je pense
Bonsoir Dan,
Oui je parlais bien de la feuille Membres.
Et oui je veux bien que vous m'avanciez dans les vérifications...
Je n'ai pas effacé les fichiers Old, j'ai retrouvé le fichier que j'ai réorganisé et me rend compte avec votre remarque que j'ai en fait travaillé par erreur sur un fichier plus ancien.
Je suis assez tête en l'air...
J'essaie donc en ce moment de recadrer les grilles sur le fichier contenant les old, mais je galère comme c'est pas possible.
Mais je continue de chercher...
Au fait est-ce que dans votre fichier contenant les old les tirages fonctionnent ?
Merci à vous
Bonjour
J'essaie donc en ce moment de recadrer les grilles sur le fichier contenant les old, mais je galère comme c'est pas possible.
Je suis en train de voir tout le processus du tete à tete. Une fois terminé je vous enverrai le fichier pour repartir de celui là.
Un truc que je ne pige pas, pourquoi vous mettez dans la feuille Concours les codes pour la mise en forme en en partie 2 (EnteteLesP) et ceux de la partie 1 (Entete) dans le module entête ?
Il y a aussi des redondances dans les mises en forme... cela complique les codes
bonjour Dan,
En fait, je crois que je me suis fait un sac de noeux dans les fichiers, et je ne vous ai pas envoyé le bon...
Milles excuses, Je travaille à essayer de supprimer tous ceux qui ne me servent plus.
Je vous envoie le fichier réorganisé sur lequel je travaille actuellement, je pense qu'il est plus clair....
Merci beaucoup...
Hum...sauf que j'ai tout fait dans le fichier que j'ai ici...
J'avais pas mal simplifié certains codes en enlevant des lignes qui sont redondantes.
Exemple d'un truc incompréhensible dans la sub teteatete.
Application.ScreenUpdating = False
Application.Calculation = xlManual
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomaticSouci aussi que vous mettez plein d'espace dans les lignes de codes qui rendent la lecture compliquée
Dites moi ce que vous attendez
Edit : en annexe le code simplifié pour la Sub teteatete et la Sub Grille1 pour le tirage 1 que vous avez mis das le module M_7EnteteEtGrilles si je ne me trompe
Merci Dan,
J'ai intégré votre code à la place du mien, c'est parfait,
Je vais m'attarder dessus, pour mieux comprendre votre raisonnement...
Quand aux lignes de séparations, ça ma paraissait plus clair, je trouvais que j'avais plus de faciliter à lire le code.
Je ne suis pas encore bien à l'aise avec la lecture du code et sa compréhension....
Faites comme vous avez l'habitude, je m'adapterai.
Merci.
Re
Voici le code simplifié pour la macro tirage(equip)
La simplification est au niveau du tri surtout
Quand aux lignes de séparations, ça ma paraissait plus clair, je trouvais que j'avais plus de faciliter à lire le code.
Je ne suis pas encore bien à l'aise avec la lecture du code et sa compréhension....
Je comprends mais c'est surtout au niveau des indentations dans les lignes ou que vous positionnez trop à droite qui oblige à scroller pour voir tout le code
Edit :
1. Voici le code TeteATete que vous pouvez remplacer dans votre fichier -- module M_4TeteATete. J'ai adapté les deux CALL à ceux de votre dernier fichier posté
2. Dans le code Public Sub DecomperLesParties(),
- vous avez une ligne au milieu du code D1 = .cells..... qui peut être supprimée. Elle est déjà déclarée en début de code
- La variable Y et la ligne Y = Cells(X, "AJ").Value peuvent être supprimées. Il suffit de remplacer if Y > 0 then dans la ligne suivante par ceci --> If Cells(X, "AJ").Value > 0 Then
Merci,
Vos modifications on étés effectuées.
J'ai remis ma tabulation a 4.
par contre j'ai dû neutralisez la ligne ".Protect DrawingObjects:=True, Contents:=True, Scenarios:=True", car je ne pouvais plus valider mes cases G/P: pour le 2eme tirage.
Oui parce que dans le code Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) qui se trouve dans la feuille Concours, vous devez modifier comme ceci :
- en dessous du END SELECT mettez ceci --> UNPROTECT
- juste avant le END SUB mettre ceci --> PROTECT
J'ai remis ma tabulation a 4.
Comme vous voulez mais vous ne gagnez rien si ce n'est à laisser des espaces vides à chaque ligne de code. Cela complique la lecture quand vous avez des boucles, des IF et autres instructions
c'est fait...
Quelle efficacité....
Pour la tabulation, la encore ça me semblait plus facile pour repérer les blocs de code qui s'exécutaient dans les if ou For...
Merci Dan
Bonjour,
1. Pour le point 3 de votre feuille "A revoir", mettez ce code pour la textbox Nom
Private Sub txt_Nom_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If Not InStr("1234567890,-", Chr(KeyAscii)) = 0 Then KeyAscii = 0
End SubPour les points 4 et 6, il vous suffit de reprendre le même code en changeant txt_Nom par txt_Prenom et txt_Ville
2. Pour la tabulation, la encore ça me semblait plus facile pour repérer les blocs de code qui s'exécutaient dans les if ou For...
Ben je vous ai mis les tabulations aussi. Je ne sais pas ce que vous avez comme type d'écran mais si vous avez un 15", cela vous oblige à faire défiler l'écran systématiquement à droite pour voir les commentaires ou la fin des lignes de code. Pourquoi faire 2 voire 4 tabulations alors qu'une seule suffit. Exemple vos lignes pour les déclarations DIM sont chaque fois positionnées avec deux tabulations vers la droite. Cela vous fait perdre chaque fois l'espace de deux tabulations pour toutes les lignes du code plus bas. Sans critique sur votre manière de fonctionner bien entendu.
3. Voici les deux codes pour le tri en Tete A Tete qui se trouve dans votre module M_8GestionEquipes
4. Voici les deux codes "Sub GagnantsConcoursTaT_2eP()" et "Sub GagnantsConcoursTaT_3eP()"
Dans le code 2eP, j'ai supprimé la variable D12 et est remplacée par Nb_lignes. Je vous ai mis un commentaire sur les lignes ou j'ai effectué la modification D12.
C'est un détail, mais vous auriez pu utiliser un nom de variable genre "derlig" qui est plus parlant que Nb_lignes
NB : la variable D12 est aussi définie dans les codes de Tri. Donc là aussi vous pourriez changer au profit de "derlig" par exemple
Dites moi si ok pour tous ces points qui terminent le "Tete A Tete"
Après et vu le nombre de modifications je pense que ce serait intéressant d'avoir votre fichier remis à jour si vous voulez que je continue sur la suite
Bonjour Dan,
Merci infiniment pour le mal que vous vous donnez....
J'ai fais les modifs que vous m'avez envoyé, j'e crois n'avoir rien oublié.
Sur la base de ce que vous m'aviez envoyé pour le tirage TaT, j'ai essayé de faire le tirage doublettes, je bute sur le 2ème tirage...
bonne journée...
Je serai absent cette après midi, voici le fichier remis à jour:
Merci du fichier
1. Je vois que vous n'avez pas adapté le code comme mentionné au point 2 de de post --> https://forum.excel-pratique.com/s/goto/1055631
2. Au début de la sub teteatete, vous avez rajouté l'instruction ci-dessous. Pourquoi mettez vous cela ?
Par défaut le calcul est toujours en automatique sur excel.
Cela n'a donc du sens que si vous êtes passé en mode manuel avant et dans votre fichier cela ne sert pas.
Application.Calculation = xlCalculationAutomatic3. Dans les 3 codes Sub TeteAtete(), Sub GagnantsConcoursTaT_2eP() et Sub GagnantsConcoursTaT_3eP(). A la partie du code With .shapes.range... :
- supprimez la ligne --> .SELECT
- remplacez le mot SELECTION par --> .TEXTFRAME
Veillez à ce que le point soit bien devant Textframe
4. Voici le code ToutEffacerPourReprendre à remplacer dans votre module 9
5. Dans la sub Grille1Doublette, je ne comprends pas ces lignes ?
With Worksheets("Concours")
Pl = 4 - 2
Y = 2
For X = Pl + Y To Dl Step Tournois
Si P1 = 4 - 2 cela fait P1 = 2.
Si Y est à 2 --> X = 2 + 2 .
P1 et Y ne varient pas dans cette macro. Pourquoi ne pas faire ceci :
With Worksheets("Concours")
For X = 4 To Dl Step TournoisBonsoir Dan,
Point 1: Un oubli, veuillez m'en excuser...
Point 2: Ligne supprimée.
Point 3: Les modifs sont faites.
Point 4: J'ai effectué le remplacement du code.
Point 5: Je m'était posé la même question, mais n'avait pas osé le toucher pensant y revenir plus tard...
Merci pour votre travail et tous vos bon conseils...
Bonjour
1. Dans la partie Doublette, je remarque que lorsque l'on génère la 1iere partie, la cellule AJ11 ne mentionne pas le chiffre 1. Du coup, si vous faites le tirage 2 cela supprime les infos de la partie 1
Est-ce que la ligne .Range("Dl_1") = Y + 2 trouvée dans la macro Teteatete ne devrait pas se trouver dans la Sub Doublette
Sachant aussi que Y dans la Sub Teteatete est Z dans la Sub Doublette
Quelle est la valeur à trouver en AJ11 pour la partie 1 en doublette ?
Vous avez vu ce point là ?
Edit : A vérifier mais je pense avoir trouvé. Dans la sub doublette, il ajouter cette ligne juste avant Call M_7EnteteEtGrilles.Entete
.Range("Dl_1") = .Cells(Rows.Count, "A").End(xlUp).Row2. Point 5 de mon post précédent
Vous avez le même souci dans la Sub Grille1 au sujet du X.
3. Sub LeTriTat.
A la fin du code, il y a une ligne juste avant le End With où vous sélectionnez une cellule en colonne K. Pourquoi ?
4. Dans la Public Sub DecomperLesParties(), veillez à rajouter .SELECT juste en dessous de l'instruction With Worksheets("Concours")
5. J'ai simplifié les codes se trouvant dans les modules M_7EnteteEtGrilles et M5_Doublette. Pour plus de facilité, il vous suffit de remplacer tous les codes se trouvant dans les deux modules de votre fichier par ceux placés dans les deux fichier joints
Bonjour Dan,
1. Je me suis rendu compte de ce manque, et j'était en train d'y travailler quand j'ai lu votre post. Le tirage doublette fonctionne à présent...
2. Merci, je ne l'avais pas vu, c'est corrigé.
3. Ligne supprimée.
4. OK
5. Merci pour ces codes, par contre ceux du "M7-Entetetgrilles" beuguent au tirage de la 3eme partie des doublettes, le tirage fonctionne bien avec l'ancien code et le nouveau "M5_Doublette"
Merci beaucoup pour votre ténacité...
5. Merci pour ces codes, par contre ceux du "M7-Entetetgrilles" beuguent au tirage de la 3eme partie des doublettes, le tirage fonctionne bien avec l'ancien code et le nouveau "M5_Doublette"
Je n'ai aucun bug avec les données (10 joueurs) de votre fichier posté.
Sur quelle ligne s'arrête le code ?
Pensez à faire du pas à pas dans l'exécution du code pour votre recherche du bug
Je ne suis pas là demain, je vais vérifier ça, et je revient vers vous ...
Merci.