Créer un historique

  • Initiateur de la discussion cortana
  • Date de début
C

cortana

Guest
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)
 
T

Thomas®

Guest
Bonjour,

Je supose que pour ecrire tes donnés tu as utilisé

Sheets('le nom de ta feuille').Range('A' & MaLigne) = textbox1

dans ton cas il faut utiliser une variable (moi je l'ai nommé Maligne)

donc tu la declare (Dim....)

ensuite dans l'initializ tu mets

MaLigne = Sheets('le nom de ta feuille').Range('A65536').End(xlUp).Row + 1

(j'ai pris la colonne A)

+ 1 est là pour que tu tape dans la ligne qui suit le dernier enregistrement.

Voilà.

Bonne chance
Thomas®
 
C

Cortana

Guest
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
 
C

cortana

Guest
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
 

MichelXld

XLDnaute Barbatruc

Pièces jointes

  • Combobox_20050513190104.zip
    8.8 KB · Affichages: 25
C

cortana

Guest
merci, j'ai réussis, grâce à çà.

Code:
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é.
 

Discussions similaires

Réponses
7
Affichages
235

Statistiques des forums

Discussions
312 229
Messages
2 086 422
Membres
103 206
dernier inscrit
diambote