Userform et textbox

Résolu
nimbus23 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   -  
melanie1324 Messages postés 1504 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,

je reviens à nouveau vers vous avec un grand plaisir, car malgrés mes recherches, je bloque sur un code.

J'ai un fichier excel
15 feuilles que je remplie à l'aide d'un userform.
un 2ème user pour visualiser les données avec 2 listbox. La 1ere je choisie la feuille et cela m'affiche les données dans une 2ème listbox. Lorsque je clic sur une ligne de ma 2eme listbox, les données s'affiche dans des textbox sur mon userform.

Maintenant ce que je voudrais faire et là je bloque depuis plusieurs semaines c'est que si je modifie une des textbox cela modifie la ligne corespondande dans ma feuille excel.

Merçi à tous le monde pour votre aide

Nimbus23


2 réponses

melanie1324 Messages postés 1504 Date d'inscription   Statut Membre Dernière intervention   155
 
Bonjour,

il faut que tu mettes le code suivant associé au bon bouton :
sheets("Feuilleconernee").cells(1,5) = textbox1.value


cells(1,5) ==> cellule située à la première ligne, 5e colonne
textbox1.value ==> le nom de la textbox
1
nimbus23 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
Bonsoir melanie1324

ton code fonctionne, mais ce que je veux, c'est changer les valeurs de la ligne sélectionnée alors que là ca me change toujours la 1ere ligne.

Merci
0
melanie1324 Messages postés 1504 Date d'inscription   Statut Membre Dernière intervention   155
 
i = selection.rows

cells(i,1) = textbox1.value
0
nimbus23 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
Bonsoir melanie1324

aprés avoir mis ton code mais j'ai un message sur ma macro i = (erreur de compilation - variable non définie)

je cherche car je ne suis pas trop doué en VBA.

Merci pour tout
0
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention  
 
Bonjour,
Il te faut pour cela :
1- rechercher, dans ta feuille, la valeur sélectionnée dans ta listbox
2- dans la ligne ainsi trouvée remplacer la (les) valeur(s) par le(s) contenu(s) de ton ou tes textbox.

Le 2- Mélanie t'as déjà répondu.
Pour le 1- tu peux, par exemple, utiliser la méthode find. Comme ceci :
Dim Trouve As Range
Dim i As Byte
Dim Valeur_cherchee As String
Dim Lign As Long

'recherche, dans la listbox1 de la valeur sélectionnée
    For i = 0 To ListBox1.ListCount - 1
        If ListBox1.Selected(i) = True Then
'si la ligne de la listbox est sélectionnée, on affecte sa valeur à la variable Valeur_cherchee
            Valeur_cherchee = ListBox1.List(i)
            Exit For
        End If
    Next i
'va chercher la valeur dans la feuille 2 colonne 1 
    Set Trouve = Sheets(2).Columns(1).Cells.Find(what:=Valeur_cherchee)
's'il ne trouve pas
        If Trouve Is Nothing Then
'message à l'utilisateur
            MsgBox "Pas trouvé"
's'il la trouve
        Else
'affecte à la variable Lign le numéro de la ligne
            Lign = Trouve.Row
            'Cells(Lign, 18) = TextBox1
        End If
Set Trouve = Nothing

La méthode find peux également admettre des paramètres facultatifs tels que :
LookIn:= xlvalues (rechercher dans les valeurs)
Lookat:= xlWhole ou xlpart (rechercher la valeur exacte ou approximative)

Tu dis...
0
nimbus23 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
merci pijaku
0
melanie1324 Messages postés 1504 Date d'inscription   Statut Membre Dernière intervention   155
 
tu peux le mettre à résolu stp!!
(juste en de sous du titre de ton post)
0