1 pièce(s) jointe(s)
Textbox dans cellule excel
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:
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 :
Code:
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 1 : je commence à la deuxième ligne .. pourquoi? à cause du Row + 1?
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