Bout de code pour une incr&mentation automatique

Salut , je solicite votre aide si possible, je suis entrain de faire un formulaire et un des champs s'est le code fournisseur que je voudrais qu'il soit automatique et qu'il s'incrémente à chaque foi que je désire ajouter un nouveau. merci d'avance , ci dessous le bout de code de la fonction ajouter.

mon code me donne tout le temps la valeur 1 afficher dans le champ code fournisseur

Private Sub CommandButton1_Click()
    Dim L As Integer
    Dim Ctrl As Control
    Dim derligne As Integer
    Dim r As Integer
    Dim t As Integer
    Nouveau = True

    If MsgBox("Confirmez-vous l'insertion de ce nouveau fournisseur ?", vbYesNo, "Demande de confirmation d'ajout") = vbYes Then
        L = Sheets("Fournisseurs").Range("a65536").End(xlUp).Row + 1 'Pour placer le nouvel enregistrement a la premiere ligne de tableau non vide

        With Sheet3
        derligne = Sheets("Fournisseurs").Range("a65536").End(xlUp).Row + 1
        For Each Ctrl In UserForm3.Controls
        r = Val(Ctrl.Tag)
        If r > 0 Then Sheet3.Cells(derligne, r) = Ctrl
        Next
        Sheet3.Cells(derligne, 2) = Val(ComboBox2)
        End With

        Range("A" & L).Value = ComboBox1
        Range("B" & L).Value = ComboBox2
        Range("C" & L).Value = TextBox1
        Range("D" & L).Value = TextBox2
        Range("E" & L).Value = TextBox3
        Range("F" & L).Value = TextBox6
        Range("G" & L).Value = TextBox7
        Range("H" & L).Value = TextBox4
        Range("I" & L).Value = TextBox5

    End If
End Sub

Bonjour eliya,

Tu utilises 2 variables qui stockent la même information:

L = Sheets("Fournisseurs").Range("a65536").End(xlUp).Row + 1
derligne = Sheets("Fournisseurs").Range("a65536").End(xlUp).Row + 1

Ces deux variables font la même chose, et ne sont jamais incrémentées.

For Each Ctrl In UserForm3.Controls
   r = Val(Ctrl.Tag)
   If r > 0 Then Sheet3.Cells(derligne, r) = Ctrl
Next

boucle sans aucune incrémentation, tu réécris x fois la même cellule. Es-ce normal? Es-ce ici qu'il faut l'incrémentation? à toi de nous le dire ^^

Sans ces informations et sans fichier, il sera impossible de t'aider d'avantage, donc

Bonjour ,

tout d'abord merci pour ton aide : )

tu as raison j'ai enlevé une variable entre les deux . ci joint le fichier afin que tu aies une meilleure visibilité .

15gestion-stock.xlsx (105.27 Ko)

Il n'y a pas de macro dans ce fichier ^^

Peux-tu:

1) joindre le fichier avec les macros

2) créer une feuille factice avec l'avant/après exécution de la macro (ce qui nous permettra de savoir ce que tu veux! ^^)

le fichier est joint avec son macro s'il n'yen a pas crées un juste pour le test, ci joint des screenshots

tu remarqueras qu'un ajour a été fait avec id=1 , j'ouvre a nouveau la fenetre pour un nouvel ajout et le code est toujours à "1"

incrementation untitled

Je suis positivement sûr que le fichier joint ne dispose ni de macro de formulaire!

Tu as joint un magnifique fichier tout à fait inutile pour répondre à ton problème ^^

(Rien qu'à l'extension, il ne peut pas contenir de macros -> .xlsx = sans macros)

Rechercher des sujets similaires à "bout code incr mentation automatique"