Listview Modifier Items via un autre Userform

Bougla972

XLDnaute Occasionnel
Bonjour à toutes et à tous,

J'ai un premier Userform1 dans lequel j'ai ma listview, au double click sur une ligne cela ouvre le Userform2 avec les infos de la ligne sélectionné dans les controls correspondants (sauf qu'en réalité elle n'est plus sélectionnée...).

Sur ce second Userform je souhaite modifier les infos des controls et ainsi les modifier sur la feuille (avec le bouton "Enregistrer Modifs").

=> Il ne garde pas le numéro de ligne de la ligne sélectionné !:(

Comment faire pour qu'il garde en mémoire ce numéro de ligne ?:confused:

Merci d'avance pour vos précieuses propositions !
 

Pièces jointes

  • Test_Listview.xlsm
    32.4 KB · Affichages: 137
  • Test_Listview.xlsm
    32.4 KB · Affichages: 140
  • Test_Listview.xlsm
    32.4 KB · Affichages: 142

Vorens

XLDnaute Occasionnel
Re : Listview Modifier Items via un autre Userform

Hello Bougla,


En gardant en mémoire l'index de la ligne sélectionnée lors du double click. Tu affecte à une variable au début de ta macro qui démarre lors du double click avec.

Code:
MaLigne = ListView1.SelectedItem.Index

Regarde le tutoriel magique de la mort qui tue qui t’apprend tout le savoir de nos ancêtre sur le contrôle listeview.

Utiliser le contrle ListView en VBA Excel

Edit: Ne pas oublier ne mettre la variable en déclaration public si non dans l'autre userform y va pas s'en souvenir =)

Meilleures salutations
 

Bougla972

XLDnaute Occasionnel
Re : Listview Modifier Items via un autre Userform

Bonjour Vorens,

merci pour tes conseils... J'ai effectivement ma variable "MaLigne" qui cible bien à présent le numéro de ligne de la listview. Par contre j'ai une seconde variable "NumLign" qui cible normalement le numéro de ligne de la feuille afin de modifier les valeurs sur la feuille, mais là j'ai l'erreur : "Argument po appel de la procédure incorrect".

Que dois-je faire pour qu'il m'affecte le numéro de ligne de la feuille ?:confused:
 

Pièces jointes

  • Test_Listview.xlsm
    31.9 KB · Affichages: 113
  • Test_Listview.xlsm
    31.9 KB · Affichages: 119
  • Test_Listview.xlsm
    31.9 KB · Affichages: 123

Vorens

XLDnaute Occasionnel
Re : Listview Modifier Items via un autre Userform

Re,


Voila je t'es corriger ton fichier y'avait d'autre bug un peux partout mais c'est good.

Meilleures salutations
 

Pièces jointes

  • Test_Listview.xlsm
    34 KB · Affichages: 238
  • Test_Listview.xlsm
    34 KB · Affichages: 218
  • Test_Listview.xlsm
    34 KB · Affichages: 195

Bougla972

XLDnaute Occasionnel
Re : Listview Modifier Items via un autre Userform

Merci bcq Vorens,

Cela marche parfaitement (je n'étais pourtant pas très loin...:mad:).

Une petite chose tout de même: Cette listview est susceptible d'afficher des doublons(Nom: 1ère colonne), en faisant le test, du coup, il modifie la première ligne trouvée et pas la ligne sélectionné réellement.

Aurais tu une solution à ce léger bug ?

Merci 1000 X pour ta patience !
 

Vorens

XLDnaute Occasionnel
Re : Listview Modifier Items via un autre Userform

Re,

N étant plus à portée de mon ordi car je répond de mon iPhone je peux te donner une idée mais pas une solution clef en main.

L idées est de modifier le find. À la place il faut faire une boucle qui va tester la valeur des cellules de la colonne A.
À chaque itération de la boucle donc à chaque ligne tu effectue un test if tout simple

If valeurselec = valeur ligneActuellementCiblee then

On écrit les new données

End if

Par cette méthode tu contrôle toute les ligne du tableau donc plus de prob avec les doublons.

Après si y a meilleur solution je suis toute ouille.

J espère que tu vois l idée dans le cas contraire tu me dit et je te fait un exemple.

Meilleures salutations
 

Vorens

XLDnaute Occasionnel
Re : Listview Modifier Items via un autre Userform

Re

Après avoir activé un deuxième neurone j ai mieu compris le problème. Le mieu est d effectué un find avec concaténation de la colonne nom et prénom afin d avoir qqch d unique
 

Bougla972

XLDnaute Occasionnel
Re : Listview Modifier Items via un autre Userform

Bonjour Vorens, le fil,

En suivant dans la mesure du possible tes indications, je ne parviens toujours pas à modifier les items de la ligne sélectionné dans le cas de doublon (Ex du fichier joint "BOUVIER"). J'ai tenté d'effectuer une seconde recherche find pour la colonne F(Date) mais rien n'y fait il me modifie la première ligne ou il trouve "BOUVIER"...:confused: !

A te lire

a+
 

Pièces jointes

  • Test_Listview1.xlsm
    41.9 KB · Affichages: 161
  • Test_Listview1.xlsm
    41.9 KB · Affichages: 165
  • Test_Listview1.xlsm
    41.9 KB · Affichages: 168

Vorens

XLDnaute Occasionnel
Re : Listview Modifier Items via un autre Userform

Hello Bougla,

En regardant l'exemple, ma question est: Pourquoi il y a deux fois la même personne avec exactement les même informations ? Mieux vaut pas imaginer quelque chose empêchant les doublons dans ton tableau ?

Il nous faut établir des règle pour solutionner le problème car si les lignes sont EXACTEMENT les mêmes, on ne pourra jamais les différencier (et cela n'a aucun intérêt de garder deux lignes avec les mêmes infos) donc il faut faire un filtre à doublon et les supprimer.
Si une des informations sur une personne change alors il faut définir la/les quelle(s) afin de pouvoir coder l'exeption.
 
Dernière édition:

Bougla972

XLDnaute Occasionnel
Re : Listview Modifier Items via un autre Userform

Re Vorens,

il peut y avoir 2 fois la même personne et les mêmes infos effectivement, MAIS avec une date de visite différente (colonne F), ce qui le cas pour notre ex "BOUVIER".

Suis je suffisamment explicite ?
 

Vorens

XLDnaute Occasionnel
Re : Listview Modifier Items via un autre Userform

Reuh,

Nan mais ho ! pourquoi t'ajoute des bugs alors que je les avais corrigé ! :mad:

Cela dit, j'ai réussi a solutionner avec les dates. Je sais pas si c'est le plus opti mais sa marche:DTu verra c'est plutôt funny les boucle imbriquées. Ton fichier en pièce jointe avec la nouvelle fonction + la correction des trucs qui marchais mais qui marche plus.


EDIT: Par contre j'ai pas effectué tout les tests pour voir si sa bug vraiment jamais, sa je te laisse faire si non je vais me mettre a la bourre au taf aussi :D . Si y'a un soucis tu me dis on corrige sa.

Meilleures salutations

Vovo
 

Pièces jointes

  • Test_Listview1 (1).xlsm
    47.5 KB · Affichages: 190
Dernière édition:

Bougla972

XLDnaute Occasionnel
Re : Listview Modifier Items via un autre Userform

Re Vovo,

Un GRAND GRAND merci pour toutes les modifs que tu m'as apporté...:D

Je vais le tester effectivement et si il y a bug que je n'arrive pas à corriger je te solliciterai. Enfin j'espère ne pas te solliciter pour ça...:eek:

Merci encore 1000 x pour ta patience et mettre à contribution tes compétences !

A+ Bougla
 

Vorens

XLDnaute Occasionnel
Re : Listview Modifier Items via un autre Userform

Re,

Toujours un plaisir :) Par contre effectue bien les tests,mélange les noms de partout dans tous les sens car j'ai un petit doute. je pence qu'il va y avoir un prob mais il ce corrige facile. Le truc c'est que j'ai pas trop le temps de tester ^^

Meilleures salutations
 

Bougla972

XLDnaute Occasionnel
Re : Listview Modifier Items via un autre Userform

Bonjour Vorens,

J'espère que le week end fut bon !

Tu avais bien raison, après plusieurs voir bcq de tests il modifie les valeurs 2 lignes en dessous de celle sélectionnée...:mad:
Pour ex, lorsque je modifie les valeurs de la ligne NADAL Rafa, lors du click sur "Enregistre Modifs" il me modifie la ligne LUBULU Kévin...Aahh!!

J'ai rajouté un textbox pour filtrer les noms. Cela n'arrange rien au problème évidemment.:eek:

A très vite
 

Pièces jointes

  • Test_Listview1.xlsm
    54.3 KB · Affichages: 204
  • Test_Listview1.xlsm
    54.3 KB · Affichages: 218
  • Test_Listview1.xlsm
    54.3 KB · Affichages: 256

Discussions similaires

Statistiques des forums

Discussions
312 503
Messages
2 089 053
Membres
104 013
dernier inscrit
VELONDAHY Mickaël