[VBA]Modifier des cellules de la ligne selectionnée dans ma listbox

ptitwin Messages postés 11 Date d'inscription dimanche 4 décembre 2011 Statut Membre Dernière intervention 4 décembre 2011 - 4 déc. 2011 à 10:37
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 - 4 déc. 2011 à 20:20
Bonjour à tous
je suis en train d'améliorer un de mes fichiers excel en ajoutant une interface via userform.
dans mon userform j'ai un fomulaire composé de textbox et de listbox qui incrémente une ligne quand j’appuie sur validé
juste ici tout va bien,
actuellement j'ai rajouté une listbox nomée "ListASM" ou je peut visualiser les lignes qui se rajoute dans ma feuille nommée "ASM"
(car je précise la personne qui remplira le formulaire n'aura pas accès a excel )

lorsque je double clique sur une ligne de "ListASM" j'ai fait en sorte que le contenu de la ligne sélectionnée réapparaisse dans le formulaire afin de pouvoir modifier la ligne en cas d'erreur
par contre j'aimerai qu'en appuyant sur un nouveau bouton "MODIFIER"
les valeurs contenu dans mes textboxs aille s'inscrire dans la ligne sélectionné dans ma "ListASM" et non rajouter une nouvelle ligne .

Voici un extrait des lignes pour faire réapparaitre le contenu de la ligne sélectionnée dans mon formulaire

merci d'avance

Private Sub ListASM_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
With ListASM
    HEUREBOX_ASM = .List(.ListIndex, 0)
    POSITIONBOX_ASM = .List(.ListIndex, 1)
    CAPTEURLISTE_ASM = .List(.ListIndex, 3)
    CLASSIFICATIONLIST_ASM = .List(.ListIndex, 5)
    TN_CSTBOX_ASM = .List(.ListIndex, 6)
    POSITION_CTCBOX_ASM = .List(.ListIndex, 7)
    ROUTEBOX_ASM = .List(.ListIndex, 8)
    AUDIOBOX_ASM = .List(.ListIndex, 23)
    ETATLIST_ASM = .List(.ListIndex, 4)
    OBSERVATIONBOX_ASM = .List(.ListIndex, 17)
End With
End Sub

16 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
4 déc. 2011 à 10:49
Bonjour,
Avant toute autrre chose : si tu développes sous VBA, c'est dans la section > Langages dérivés > VBA qu'il convenait d'ouvrir cette discussion (c'est important).

Si j'ai bien compris, tu souhaites reconstituer complètement la listbos à partir des données des textboxes (sans donc rajouter). C'est la ton problème ?
Si oui :
1) effacer (méthode Clear) ta listbox
2) ajouter (méthode AddItem) chacun des contenus de tes textboxes
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
4 déc. 2011 à 11:02
Ouais...
En te relisant, je me demande si j'ai bien compris ce que tu cherches à faire exactement.
Peux-tu être plus (très) précis sur ce point ?
Et si, au bout du compte, il s'agit de substituer à une ligne définie de ta listbox le contenu d'une textbox. ===>> c'est encore plus simple ('beaucoup trop, du coup, pour que je crois que là est ton big problème) .
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
ptitwin Messages postés 11 Date d'inscription dimanche 4 décembre 2011 Statut Membre Dernière intervention 4 décembre 2011
4 déc. 2011 à 13:05
salut et merci de me filer un coup de main
je vais essayer de déplacer le topic dans la bonne cat"égorie
pour mon big probleme c'est bien la version la plus simple .
je ne connais pas la syntaxe que je dois utiliser pour remplir la ligne qui est selectionné dans ma listbox avec les elements dans mes textbox ?

exemple j'ai 10 ligne 10 colonnes , une listbox qui represente ce tableau de 10 par 10
je selectionne la troisieme ligne, les dix éléments de cette ligne s'affiche dans mon formulaire je modifie l'élément ou il y a une erreur et lorsque je clique sur mon bouton "MODIFIER" il transfère les 10 éléments des mes textbox dans les case excel de la ligne 3 de la feuille excel.

Merci
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
4 déc. 2011 à 13:20
par contre j'aimerai qu'en appuyant sur un nouveau bouton "MODIFIER"
les valeurs contenu dans mes textboxs aille s'inscrire dans la ligne sélectionné dans ma "ListASM"

dans ta lisbox, donc .
et maintenant :
il transfère les 10 éléments des mes textbox dans les case excel de la ligne 3 de la feuille excel.

Il n'y a rien qui te gêne ? Moi si (énormément) !*
Et on en est au 5ème message...

____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ptitwin Messages postés 11 Date d'inscription dimanche 4 décembre 2011 Statut Membre Dernière intervention 4 décembre 2011
4 déc. 2011 à 13:47
dsl je débute et je ne comprend pas ou vous voulez en venir ...
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
4 déc. 2011 à 14:28
Nous ne voulons, nous, en venir nulle part ! Mais nous aimerions avoir par contre une petite chance de deviner ce à quoi, toi, tu veux parvenir.
La seule chose que je comprends, personnellement, c'est que "c'est clair" dans ton esprit. Te reste, pour que ce soit également clair dans l'esprit des autres, à faire un effort de clarté (sans nécessité d'enrobages) dans tes exposés du problème. Et cet effort-là, vois-tu, ne nécessite aucune compétence technique. Juste de la précision.


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
ptitwin Messages postés 11 Date d'inscription dimanche 4 décembre 2011 Statut Membre Dernière intervention 4 décembre 2011
4 déc. 2011 à 15:02
je vais essayer de prendre un exemple concret vu que je ne peut pas mettre mon fichier ni photo en ligne.

disons un tableau de 2 colonnes A et B avec deux lignes

ma feuille excel :
A B
Petit Mince
Grand Gros

mon listbox affiche donc la même chose
si je double clique dans celui ci sur la deuxieme ligne

j'aurai "grand" dans la textbox1 et "Gros" dans la textbox2

maintenant je modifie "grand" en "Petit"

et je clique sur mon bouton "MODIFIER"

que dois je mettre dans Private Sub MODIFIER_Click()
pour que "Petit" aille s'inscrire dans la case A2(dans ce cas la) à la place de "Grand"

Merci encore pour votre patience j'espère avoir été un peu plus clair .

Bonne après midi
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
4 déc. 2011 à 16:04
Non, ce n'est toujours pas vraiment clair, comme mécanisme.
Mais aussi et surtout : ton autre discussion de ce jour révèle la possible existence d'aspects qui feraient que toute tentative d'aide à ce stade risquerait fort de "taper complètement à côté de la plaque".


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
ptitwin Messages postés 11 Date d'inscription dimanche 4 décembre 2011 Statut Membre Dernière intervention 4 décembre 2011
4 déc. 2011 à 16:14
bon ben dsl te vous avoir fait perdre votre temps. je ne vois pas comment être plus précis avec le peu de notion que j'ai.
Bonne soirée à vous
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
4 déc. 2011 à 16:24
Ne comprends-tu donc pas que les choses et leurs conséquences sont très différentes selon que ta listbox est liée ou non ?
Et ne comprends-tu pas qu'en plus, si des lignes sont cachées sur ta feuille, il va devenir difficile, voir impossible, d'associer un index de la listbox à un Numéro de ligne de ta feuille ?
Il n'y a à ce stade besoin d'aucune vraie connaissance technique, mais certes de logique.
Tes deux discussion sont, crois-moi, finalement intimement liées.


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
4 déc. 2011 à 16:57
A tout hasard :
connais-tu l'utilisation de Application.InputBox ?
(pas inputBox, mais Application.Inputbox, qui est différente)
Il me semble assez qu'elle pourrait te convenir


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
ptitwin Messages postés 11 Date d'inscription dimanche 4 décembre 2011 Statut Membre Dernière intervention 4 décembre 2011
4 déc. 2011 à 19:22
non je ne la connais pas je vais faire comme sur l'autre post je vais regarder sur internet si je trouve quelque chose.
Merci
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
4 déc. 2011 à 19:45
Non ! arrête d'aller "regarder sur internet" !
Ouvre plutôt ton aide VBA
C'est tout près de toi !

____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
4 déc. 2011 à 19:49
Pour ton info : je n'ouvre personnellement jamais internet pour rechercher une solution. C'est trop monotone et non "fructifère".
Lorsque j'ai commencé, d'ailleurs, à développer (sous plusieurs langages différents) : ni internet (pas accessible), ni, par voie évidente de conséquence, de forums !
Et ce que j'ai ainsi appris, quelquefois péniblement, restera pour le coup gravé jusqu'à ce que je rende l'âme !


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
ptitwin Messages postés 11 Date d'inscription dimanche 4 décembre 2011 Statut Membre Dernière intervention 4 décembre 2011
4 déc. 2011 à 19:50
malheureusement je n'y ai pas accès je travaille au boulot et l'aide n'est pas installé....
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
4 déc. 2011 à 20:20
malheureusement je n'y ai pas accès je travaille au boulot et l'aide n'est pas installé

Cela veut alors dire que l'administrateur du système ne veut pas que l'on s'amuse à développer. Un point c'est tout !
Nul, même les plus avancés et les plus avertis des développeurs, ne saurait développer valablement sans cet accès.
Si développer est la tâche qui t'a été confiée : règle vite cela avec l'administrateur ! C'est ton droit le plus absolu !
Et lis ce qui est écrit à ce propos dans ma signature, au bas de ce message.


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
Rejoignez-nous