Ajout des données en respectant la numerotation

15gestion-lames.xlsm (75.63 Ko)

Bonjour,

j'ai le tableau ci-dessous:

capture

Je veux ajouter des lames a ma colonne B, en précisant le numéro de la lame après l'avoir choisi a partir d'une comobobox, si le N° est 005 la lame doit se mettre en colonne B ligne 6, si le N° est 006, lame se rajoute en colonne B ligne 7...

j'ai rédigé le code suivant:

Private Sub CommandButton1_Click()
Dim fin_liste As Range, ligne As Long, ws_lame As Worksheet, ctrl As Boolean
Set ws_lame = ActiveWorkbook.Worksheets("Liste_Lame_" & Me.ComboBox_Modele.Value)
Set fin_liste = ThisWorkbook.Worksheets("Liste_Lame_" & Me.ComboBox_Modele.Value).Cells(Rows.Count, "B").End(xlUp).Offset(1, 0)
For j = 2 To fin_liste
    If ws_lame.Range("A" & j) = Me.ComboBox_Num.Value Then
        ctrl = True
        fin_liste = Me.ComboBox_Num.Value & "-" & Me.TextBox_Mois.Value & "-" & Me.TextBox_Annee.Value & "-" & Me.ComboBox_Modele.Value & "-" & Me.ComboBox_Const.Value
Exit For
    End If
Next
If ctrl = False Then
    j = fin_liste + 1
    ws_lame.Range("A" & j).Value = Me.ComboBox_Num.Value
    fin_liste = Me.ComboBox_Num.Value & "-" & Me.TextBox_Mois.Value & "-" & Me.TextBox_Annee.Value & "-" & Me.ComboBox_Modele.Value & "-" & Me.ComboBox_Const.Value
End If
End Sub

il me rajoute les lames directement sans prendre en compte le numéro que j'ai choisi, que dois je modifier dans mon code ? Merci

Rmq: J'ai 4 feuilles liste_lameM1, liste_lameM2, liste_lameM3 et liste_lameM4 d'où la définition de fin_liste : fin_liste = ThisWorkbook.Worksheets("Liste_Lame_" & Me.ComboBox_Modele.Value).Cells(Rows.Count, "B").End(xlUp).Offset(1, 0), en précisant le modèle, la lame se rajoute dans la bonne feuille.

Bonjour

Je simplifierai

Private Sub CommandButton1_Click()
Dim Cible As Range

With ActiveWorkbook.Worksheets("Liste_Lame_" & Me.ComboBox_Modele.Value)
    Set Cible = .Cells(CInt(Me.ComboBox_Num.Value) + 1, 2)
    Cible = Me.ComboBox_Num.Value & "-" & Me.TextBox_Mois.Value & "-" & Me.TextBox_Annee.Value & "-" & Me.ComboBox_Modele.Value & "-" & Me.ComboBox_Const.Value
    If Cible.Offset(0, -1) = "" Then Cible.Offset(0, -1).Value = Me.ComboBox_Num.Value
End With

End Sub

Mais peut-être ajouter un contrôle afin de vérifier que la ligne n'était pas déjà renseignée...

Ah merci bcp ca marche bien, juste une question dans la ligne :

Set Cible = .Cells(CInt(Me.ComboBox_Num.Value) + 1, 2)

le CInt il fait quoi ?

RE

Et la touche F1 ?

cint

Merciii

Re,

Si je veux faire la même chose mais au lieu de rajouter les données dans les lignes, je les rajoute dans les colonnes, comme dans la photo suivante:

bbbbb

pour le N° 001 j'ai les éléments dans la ligne 2, pour le 002 ca se rajoutent dans la ligne 3... Comment je fais svp ? merciii

Bonjour

Set Cible = .Cells(CInt(Me.ComboBox_Num.Value) + 1, 2)

fixe la position, ligne et colonne, donc à interpréter en fonction de ce que tu veux faire

Rechercher des sujets similaires à "ajout donnees respectant numerotation"