Modifier ListView avec des TextBox

47test-groupes.xlsm (151.06 Ko)

Bonjour le Forum,

Depuis plusieurs jours je cherche sur le Forum des codes qui me permettrais d'avancer sur mon projet.

J'en ai trouver qui fonctionnent bien mais d'autres qui bug, donc c'est pour cela que je viens vous voir.

Le nouveau sujet que je vous pose, en fin de compte en comporte 2.

Pour passer au 2ème il faut que le 1èr soit résolu.

Le fichier:

1) A la colonne Q : Double clic de Q13 à Q23

Une fois l'USF ouvert à droite un clic dans la ListView2 pour choisir une personne (maxi 15) puis ont clic sur " AJOUTER NOM "

Là est mon 1èr sujet :

Les Textbox s'affichent directement dans la ListView1.

Je voudrais que quand ont clic sur un nom de la ListView1 qu'il s'affiche dans les TextBox, car ensuite je doit y inscrire des données de la Textbox 4 à 13.

et que ceux ci s'enregistre automatiquement dans la ListView1.

2) 2ème sujet :

Est il possible d'enregistrer les données de la ListView1 sur la feuille active (à partir de colonne GA2) pour pouvoir par la suite modifier supprimer ... les données.

Mais le problème il faudrait qu'il soit enregistrer par GROUPE : GROUPE A avec toutes les données sur ce le GROUPE A.

GROUPE B avec toutes les données sur ce le GROUPE B etc..

Merci d'avance de votre aide

Bonne journée au Forum.

Balance58

Bonjour le Forum

Personne aurait une idée même seulement pour mon 1èr sujet (Comment alimenter une Listview avec des textBox).

Bonne journée le Forum

Cordialement

Balance58

Bonjour Balance58

Pour l' évènement de ta listview1, remplace ton code par celui-ci je pense :

Private Sub Listview1_ItemClick(ByVal Item As MSComctlLib.ListItem)
Dim Cellule As Integer
For Cellule = 1 To 13 Step 1
   If Cellule = 1 Then
      Me.Controls("TextBox" & Cellule).Text = ListView1.ListItems(Item.Index).Text
   Else
    If ListView1.ListItems(Item.Index).SubItems(Cellule - 1) = "" Then Exit Sub
      Me.Controls("TextBox" & Cellule).Text = ListView1.ListItems(Item.Index).ListSubItems(Cellule - 1).Text
   End If
Next Cellule

End Sub

2ème point : n'ai pas encore regardé

A+

Bonjour Patty5046 et rebonjour le Forum,

Merci pour ce code super j'avance.

Mais pour finir le 1èr point,

A tu une idée pour enregistrer les données directement dans la Listview que je rentre de la TextBox 4 à 13.

merci pour ton aide

Bon après midi à toi eu au Forum.

Balance58

Bonjour

je viens de voir que j'avais oublié cela....mais je suis dessus et je cale

On a l'impression que lorsqu'une colonne de listview est vide ... index out of bounds...

C'est d'ailleurs pour cela que j'avais rectifié ton code

Te tiens au courant..

A+

Re

Impossible de trouver comment rajouter le contenu de ton textbox4 (Ma/Ap) à la fin de la colonne ....toujours index out of bounds

Donc , j'ai employé les grands moyens : je supprime la ligne à modifier et je la recrée avec la saisie faite dans le textbox4

Voilà :

Private Sub TextBox4_Change()
    ListView1.ListItems.Remove (LigLW)
    With ListView1
        .ListItems.Add , , TextBox1
        .ListItems(.ListItems.Count).ListSubItems.Add , , TextBox2
        .ListItems(.ListItems.Count).ListSubItems.Add , , TextBox3
        .ListItems(.ListItems.Count).ListSubItems.Add , , TextBox4
    End With
End Sub

Pas élégant...mais après plein de recherches...rien trouvé...facile de modifier le contenu d'un champ existant, mais s'il est vide toujours la même erreur

Ce serait à creuser ou poser cette question précise

Je vais voir si je peux t'aider pour l'étape suivante..

A+

Re

Excuse , je corrige :

Private Sub TextBox4_Change()
    ListView1.ListItems.Remove (LigLW)
    If Len(TextBox4.Text) = 2 Then
        With ListView1
            .ListItems.Add , , TextBox1
            .ListItems(.ListItems.Count).ListSubItems.Add , , TextBox2
            .ListItems(.ListItems.Count).ListSubItems.Add , , TextBox3
            .ListItems(.ListItems.Count).ListSubItems.Add , , TextBox4
        End With
    End If
End Sub

A+

Re,

Merci de nouveau pour ce code,

Mais quand je rentre une donnée dans la TextBox4 nouveau message d'erreur.

Erreur d'exécution '35601'

Element not found

En jaune : ListView1.ListItems.Remove (LigLW)

Peu tu me dire quelle est le problème avec la TextBox 4

Une idée :

et si au moment ou l'ont clic sur un nom : ont pourrais rempli automatiquement les TextBox 4 à 13 avec un zéro à l'intérieur, puis ensuite y remplir les données pour quelles s'enregistrent automatiquement dans la Listview..

Merci

Balance58

Bonsoir

J'ai passé toute la soirée sur ton problème.

Je t'envoie un fichier ...sauf qu'au lieu de charger les colonnes que tu m'as demandé... j'ai chargé les colonnes à partir de B pour mieux voir ce que je faisais...

Trop fatiguée pour continuer... mais je pense que cela pourra peut-être t'aider un peu

Voici le fichier

Bonne soirée...peut_être à bientôt ...je verrai plus clair demain

Bonne soirée à tous

63test-groupes-v1.xlsm (162.77 Ko)

Bonjour Patty5046 et le Forum,

Merci de ton aide et de ton implication à m'aidé dans mon projet.

Si tu peu regarder l'enregistrement des données des TextBox 4 à 13 car elle ne se fait pas dans la Listview1.

Je comprend l'enregistrement des données sur la feuille, mais comment fait tu à l'ouverture de l'USF pour retrouver les joueurs de chaque équipes.

Merci

Bonne journée à toi et au Forum

Balance58

Bonjour Balance 58

Voici un nouveau fichier à tester

Je t'avais donné des explications ...ai tout perdu car j'ai été déconnectée ..Fatiguée.. .

Donc vois toi même nouveau fichier

J'ai faim

43test-groupes-v2.xlsm (166.48 Ko)

Bon courage

A +

Re,

Encore une nouvelle fois merci.

En ce qui concerne le bouton "Compléter LW1 " il est bien mais ont peu seulement modifier que la première colonne "Code "

Si ont pouvait modifier toutes les colonnes cela serais encore mieux.

A+

Balance58

Bonjour

Excuse...j'ai encore fait une bêtise..suis fatiguée

Modifie le code comme suit :

Private Sub CmdCompleter_LW1_Click()
    If LigLW = 0 Then
        MsgBox "Aucune ligne à compléter n'est sélectionnée"
        Exit Sub
    End If
    ListView1.ListItems.Remove (LigLW)
        With ListView1
            .ListItems.Add , , TextBox1
            For ind = 2 To 13
                .ListItems(.ListItems.Count).ListSubItems.Add , , Controls("TextBox" & ind)
            Next ind
        End With
End Sub

A +

Bonsoir Patty5046 et le Forum,

Superrrrr magnifique,

Bien joué, tu mérite de te reposer c'est formidable.

Il reste maintenant à finaliser le 2ème points.

Encore une fois merci.

Repose toi bien et bonne soirée à toi et au Forum.

Balance 58

Bonjour Patty5046 et le Forum,

J'aurais voulu savoir si tu avait une solution pour récupérer les données inscrites sur la feuille pour les transmettre dans la Listview .

Pour pouvoir par la suite modifier supprimer ... les données

Mais le problème il faudrait qu'il soit enregistrer par GROUPE : GROUPE A avec toutes les données sur ce le GROUPE A.

GROUPE B avec toutes les données sur ce le GROUPE B etc..

Bonne après midi à toi et au Forum.

Balance58

Bonjour Balance58 bonjour le forum

Après un peu de repos, voici la nouvelle mouture .

J'ai par contre supprimé tes intitulés Groupe A, Groupe B etc.....Car je n'en voyais pas l''utilité...d'autre part tu dis devoir ne sélectionner que 15 participants et tes groupes se répétaient au-delà de 15...donc je ne comprenais pas

A toi de voir...

24test-groupes-v3.xlsm (163.52 Ko)

Bon courage

Re,

En ce qui concerne les groupes Il y à environ entre 20 et 25 participants par groupe et ont ne peut en choisir que 15.

Mais comment fait tu pour mettre les participants dans la listview1 qui sont enregistrer sur la feuille active pour pouvoir modifier si besoin.

Merci

Balance58

Bonjour Balance58

Je me donne du mal...je suis à la retraite et plus dans le bain...mais cela vient...

Mon idée pour faire ce que tu souhaites a été la suivante : je te pose une question au départ , si tu veux créer un groupe qui n'est pas encore sur la feuille cela fonctionne comme avant.Par contre si tu veux modifier un groupe déjà créé auparavant, je récupère ce groupe pour le charger dès le début dans ta LW1 pour que tu puisses supprimer un participant, en ajouter ou modifier un.

Lors de ce chargement je vide les données de ce groupe dans la feuille et lorsque tu as fini de modifier ton équipe, tu fais "modifier feuille" cela les recrée et je trie la feuille sur le groupe pour que cela soit ordonné.

Car si tu supprimes ou recrées des données directement dans ta feuille, tu perds les numéros de ligne où tu as prévu tes double clic et cela ne fonctionne plus...

Après ce baratin indigeste....vois si cela te va et s'il je n'ai pas fait trop de bugs

Au fait il faudra aussi que tu rajoutes des contrôles dans la saisie de tes textbox, car je ne me gêne pas pour mettre du numérique là où tu souhaites Ma ou Ap

26test-groupes-v4.xlsm (173.31 Ko)

Bon courage

Bonjour

voir userform1 pour choisir les groupes

A+

Maurice

Bonsoir Patty5046 et le Forum,

Désolé je ne voulais pas te bousculer.

Merci de nouveau pour ce fichier.

Fonctionne bien pour le GroupeA

Mais si pour l'exemple je remplis les données du groupe A et B

A la prochaine ouverture, clic sur modifier j'ai bien le groupe A mais si je clic sur gérer l'autre Groupe les données du Groupe B ne sont pas présente.

Bonne soirée à toi et au Forum.

Balance58

Rechercher des sujets similaires à "modifier listview textbox"