Comment utiliser selecteditem de listview?

Salut tout le monde,

encore avec ce fouchu listview

https://www.excel-pratique.com/~files/doc2/MRzhKRecupListView2.xls

donc comme on ne peut pas modifier les données de la listview manuellement, je voudrais que lorsque je clique sur un élément de la listview, l'userform2 apparaisse et les données que je rentre dans ce userform remplissent les colonnes 5 et 7 de ma précédente listview.

J'ai mis un code mais j'ai l'impression que dés que l'userform2 s'ouvre l'élément que j'ai séléctionné dans la listview se déselectionne...

Comment faire? Je crie à l'aide c'est trés important (d'où la quantité de post que j'ai créé sur ce #$*%# de listview...)

tu avais la solution avec .ListView1.SelectedItem.ListSubItems(4). Par contre au lieu d'écrire

placep = Me.Poids.Value

tu devrais faire l'inverse

Me.Poids.Value = placep

un code alternatif dans userform1

Private Sub ListView1_DblClick()
    With UserForm2
        .Poids.Text = ListView1.SelectedItem.ListSubItems(4)
        .NumLot.Text = ListView1.SelectedItem.ListSubItems(6)
    End With
    UserForm2.Show
End Sub

bon courage[/quote]

Salut Math,

merci pour le code alternatif c'est plus complet! Par contre le transfert dans la listview ne fonctionne pas! Est ce qu'il faudrait pas carrément modifier la base en fait?

je m'excuse je ne te suis plus,

de quel transfert tu parles au juste?

Excuse

je vais mieux préciser et éviter de t'embrouiller

ce qui marche pas c'est le transfert des données des textbox du userform2 dans la listview du userform1. Lorsque je saisie le poids et/ou le N° de lot dans le userform2 il faut qu'ils apparaissent dans la listview sur la ligne de l'item sélectionné dans les colonnes poids et N° lot, en fait!

Ton code dans le userform2 devrait être

Private Sub OK_Click()

With UserForm1
    .ListView1.SelectedItem.ListSubItems(4).Text = Me.Poids.Value
    .ListView1.SelectedItem.ListSubItems(6).Text = Me.NumLot.Value
End With

Unload Me

End Sub

bien sur il faudrait tester si les subitems 4 et 6 sont déjà créé. Dans ton fichier est-ce une possibilité que les champs poids et NumLot soit vide et ne soit pas créé dans le listview?

Salut à tous, salut Math,

je viens de me réveiller (en sachant qu'à La Réunion on a 2 heures d'avance par rapport à votre fuseau horaire métropolitain) et c'est un de ces matins où on est bien content de se lever!!

TRES GRAND MERCI A TOI MATH, çà marche!!

En ce qui concerne les données dans la listview, j'ai mis un code qui permet de chercher dans mon fichier si il y a déjà un poids à cette date. Du coup, la listview affiche si il y a un poids saisi précédemment. Donc si je saisi un poids il le modifie dans la listview.

Maintenant, il faut que je crée le code pour envoyer les modif de ma listview vers ma base de données (je pense y arriver mais sinon je sais où aller! ).

Par contre, est ce que tu sais comment actualiser ma listview par rapport aux modifs que je fais? Je m'explique: la colonne "GMQ" de la listview doit calculer la différence de poids entre la dernière pesée et cette pesée et diviser le résultat par la différence de jours entre ces 2 pesées.

Exemple:dernière pesée="01/10/09" poids="35"

pesée="15/10/09" poids="40"

GMQ=((40-35)/(15/10/09-01/10/09))*1000 -----> (5kg/15jours)*1000=333grammes/jour

J'ai mis le calcul pour une meilleure compréhension mais je veux juste savoir si c'est possible de réactualiser la listview par rapport aux modifs et quels codes utiliser! Je me débrouillerai aprés pour le reste!

GRAND MERCI ENCORE MATH! L'efficacité de ce forum n'est plus à prouver! 8)

Content de t'avoir aider,

Pour l'actualisation, dès que tu donne un valeur au listview, le changement se reflète à l'écran. Donc après que tu ais fait ton calcul:

Me.ListView1.ListItems(1).SubItems(5) = GMQ

si ça ne fonctionne pas tu peux toujours essayer

me.repaint

si ton code est dans le userforms

Bonne journée

Rechercher des sujets similaires à "comment utiliser selecteditem listview"