Bonjour,
J'ai crée un user form avec des combobobox. lorsque je choisis dans la combobox la valeur va se stocker dans une cellule. le problème est que quand je relance l'userform, les nouvelles valeurs remplacent les précedentes. Ce que je voudrait, c'est que a chaque utilisation du userform, les valeurs aillent se mettre dans les lignes suivantes afin de créer un historique.
Merci de votre aide (débutant total)
En fait, je n'ai pas de macro, j'ai justecrée un userform comme dans le lien que j'ai mis. dans mon userform, il y a quatre listedéroulante. la valeur choisis va dans une cellule. mais quand j'ouvre de nouveau le userform et que je choisis de nouvelles valeur dans mes listes, celles ci eface les précédentes. comment faire pour decaler d'une ligne à chaque ouverture du userform.
merci
je peut vous l'envoyer par mail
je ne vois pas de code pour le userform. je trouve seulement le code des boutons!!
sinon j'ai çà
Code:
ub Macro2()
''
Dim valeur As Variant
Dim stock As Integer
Dim entree As Integer
Dim mois As Object
Load Userform2
Userform2.Show
Sheets('Quel fusible pour quel appareil').Select
stock = Range('f135').Value
valeur = InputBox('Combien de fusible(s) avez-vous remplacé ?')
Range('f21').Value = valeur
entree = Range('f21').Value
If entree > stock Then
Do
msgbox ('Il ne reste plus assez de fusibles de ce type !')
valeur = 0
entree = 0
valeur = InputBox('Combien de fusible(s) avez-vous remplacé ?')
Range('f21').Value = valeur
entree = Range('f21').Value
Loop Until entree <= stock
Range('f20').Value = valeur
Else: Range('f20').Value = valeur
End If
Sheets('Feuil1').Select
If Range('m5').Value >= 0 Then
Range('k5').Value = Range('k5').Value - Range('m5').Value
End If
If Range('m6').Value >= 0 Then
Range('k6').Value = Range('k6').Value - Range('m6').Value
End If
If Range('m7').Value >= 0 Then
Range('k7').Value = Range('k7').Value - Range('m7').Value
End If
If Range('m8').Value >= 0 Then
Range('k8').Value = Range('k8').Value - Range('m8').Value
End If
If Range('m9').Value >= 0 Then
Range('k9').Value = Range('k9').Value - Range('m9').Value
End If
If Range('m10').Value >= 0 Then
Range('k10').Value = Range('k10').Value - Range('m10').Value
End If
If Range('m11').Value >= 0 Then
Range('k11').Value = Range('k11').Value - Range('m11').Value
End If
If Range('m12').Value >= 0 Then
Range('k12').Value = Range('k12').Value - Range('m12').Value
End If
If Range('m13').Value >= 0 Then
Range('k13').Value = Range('k13').Value - Range('m13').Value
End If
If Range('m14').Value >= 0 Then
Range('k14').Value = Range('k14').Value - Range('m14').Value
End If
If Range('m14').Value >= 0 Then
Range('k14').Value = Range('k14').Value - Range('m14').Value
End If
If Range('m15').Value >= 0 Then
Range('k15').Value = Range('k15').Value - Range('m15').Value
End If
If Range('m16').Value >= 0 Then
Range('k16').Value = Range('k16').Value - Range('m16').Value
End If
If Range('m17').Value >= 0 Then
Range('k17').Value = Range('k17').Value - Range('m17').Value
End If
If Range('m18').Value >= 0 Then
Range('k18').Value = Range('k18').Value - Range('m18').Value
End If
If Range('m19').Value >= 0 Then
Range('k19').Value = Range('k19').Value - Range('m19').Value
End If
If Range('m20').Value >= 0 Then
Range('k20').Value = Range('k20').Value - Range('m20').Value
End If
If Range('m21').Value >= 0 Then
Range('k21').Value = Range('k21').Value - Range('m21').Value
End If
If Range('m22').Value >= 0 Then
Range('k22').Value = Range('k22').Value - Range('m22').Value
End If
If Range('m23').Value >= 0 Then
Range('k23').Value = Range('k23').Value - Range('m23').Value
End If
If Range('m24').Value >= 0 Then
Range('k24').Value = Range('k24').Value - Range('m24').Value
End If
If Range('m25').Value >= 0 Then
Range('k25').Value = Range('k25').Value - Range('m25').Value
End If
If Range('m26').Value >= 0 Then
Range('k26').Value = Range('k26').Value - Range('m26').Value
End If
If Range('m27').Value >= 0 Then
Range('k27').Value = Range('k27').Value - Range('m27').Value
End If
Sheets('Quel fusible pour quel appareil').Select
Range('f20').Value = '0'
Range('f21').Value = '0'
If Range('f135').Value = 1 Then
msgbox ('Il ne reste plus qu'un seul fusible de ce type !')
End If
If Range('f135').Value > 1 And Range('f135').Value <= 5 Then
msgbox ('Il ne reste plus que ' & Range('f135').Value & ' fusibles de ce type')
End If
If Range('f135').Value = 0 Then
msgbox ('Il n'y a plus de fusible de ce type !')
msgbox ('Pensez à réapprovisionner rapidement !')
End If
End Sub
Dim A As Integer
'If ComboBox2.Value = '' Then Exit Sub
A = Range('l65536').End(xlUp).Row + 1 'premiere cellule vide dans la colonne A
'insertion du combobox dans dans la premiere cellule vide de la colonne A
Cells(A, 12) = ComboBox2.Value
J'aimerais maintenant savoir comment rendre impossible la validation tant que une valeur de chaque liste n'ai été choisi. Deplus, j'aimerais que tant que la validation n'a pas été faite, tous les choix qui ont pu être effectue dans la liste, ne soit recensé dans une ligne (autrement, cela décale tout) et les doneés sont faussé.