Bonjour à tous,
Je souhaiterais à partir de ma textbox alimenter des cellules EXCEL en fonction de ma combobox2.
Ma combobox 1 alimente la combobox 2, je pointe donc vers 1 ligne en particulier de mon tableau (voir image).
Si je rentre "15" dans ma textbox et que je clique sur OK je voudrais que cette valeur s'ajoute dans la ligne et colonne concernées (trais vert).
Si je ne modifie pas mes entrées combobox et que je rentre "17" comme valeur dans ma textbox je voudrais que la valeur s'ajoute à côté de la précédente (Incrémentation des colonnes...).
Je n'arrive vraiment pas à mettre ça en place malgré les (bons) tutos dispo et mes recherches sur le forum :
http://silkyroad.developpez.com/vba/boucles/
http://silkyroad.developpez.com/VBA/...UserForm/#LI-B
Je vous présente mon code actuel (qui n'est pas de moi pour être honnête) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59 Private Sub listecote_Change() End Sub Private Sub listepiece_Change() Dim vlistepiece As Range Me.listecote.Clear With Sheets("cote") Set vlistepiece = .Columns(1).Find(Me.listepiece.Value) If Not vlistepiece Is Nothing Then For i = vlistepiece.Row To .Range("B65536").End(xlUp).Row If .Range("A" & i) = Me.listepiece.Value Or .Range("A" & i) = "" Then If .Range("B" & i) <> "" Then Me.listecote.AddItem (.Range("B" & i).Value) End If Else Exit Sub End If Next i End If End With End Sub Private Sub OKvaleur_Click() Worksheets("Cote").Cells(5, 1) = valeurrentre.Value 'Ligne test End Sub Private Sub UserForm_Activate() With Me 'affiche l'USF en bas à droite .Top = 180 .Left = 0 End With End Sub Private Sub UserForm_Initialize() Dim i As Long, derlign As Long With Sheets("Cote") derlign = .Range("A65536").End(xlUp).Row For i = 1 To derlign If .Range("A" & i) <> "" Then Me.listepiece.AddItem (.Range("A" & i).Value) End If Next i End With End Sub
Merci à vous
____________________________________________________________
EDIT
____________________________________________________________
En continuant de fouiller sur le net je suis tombé sur un morceau de code, j'ai donc ouvert une nouvelle feuille excel puis créé un userform avec une textbox et un commandbutton (que j'ai renommé cb1)
J'ai fait ça :
Problème 1 : je commence à la deuxième ligne .. pourquoi? à cause du Row + 1?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Private Sub cb1_Click() With Worksheets("Feuil1") Position = .Range("A65536").End(xlUp).Row + 1 .Range("A" & Position).Value = TextBox1.Value TextBox1.Value = "" End With End Sub
Problème 2 : j'incrémente les lignes et non les colonnes.
Problème 3 : Comment lié avec l'info de position de ma combobox2?
Désolé pour toutes ces questions ...
Merci de votre aide
Partager