Problème de macro pour formulaire

bonsoir j'ai un petit problème qui a surement une solution mais comme débutant je suis au pied du mur et je me demande comment passer de l'autre coté.

je remplis un tableau a l'aide d'un formulaire qui fonctionne a une exeptio prés. quand je selectionne par une checkbox la fonction nouveau client de mon formulaire dans la case numero client (label12 de mon code) il me met soit 1 soit le numero de reference pour la numerotation de mes client alors que je souhaiterai qu'il me rajoute le numero suivant (si dernier client disponible 1001) qu'il m'intègre directement dans cette case le numero 1002 et ainsi de suite.

voici mon code , je pense que mon problème vien de la fonction création, il doit me manquer quelque chose :

Option Explicit

Dim n As Long, u As Long

Public Xcel As Long

Dim Client1 As Range, Tableau As Range

Dim Lgn As Range

Private Sub UserForm_Initialize() ' [1] INITIALISE USERFORM (Départ)

ComboBox3.Visible = False

Label12.Visible = False

End Sub

Private Sub CheckBox1_Change() 'CREATION

Xcel = Cells(1, 2) + 1

Label12 = Xcel

Select Case CheckBox1.Value

Case True: Label12.Visible = True

ComboBox3.Visible = False

Frame1.Visible = False

Case False: Label12.Visible = False

CheckBox2.Visible = True

Frame1.Visible = True

End Select

End Sub

Private Sub CheckBox2_Change() 'MODIFICATION

Dim plage As Range

With Worksheets("Liste_clients")

Set Client1 = .Range("A3")

Set plage = .Range(Client1, .Range("A65536").End(xlUp))

Set Tableau = plage.Resize(, 10)

End With

ComboBox3.List = plage.Value

Select Case CheckBox2.Value

Case True: Label12.Visible = False

ComboBox3.Visible = True

Frame2.Visible = False

Case False: Label12.Visible = False

ComboBox3.Visible = False

Frame2.Visible = True

ComboBox3 = ""

nom = ""

prenom = ""

code_postal = ""

adresse = ""

ville = ""

telephone = ""

mail = ""

comentaire = ""

End Select

End Sub

Private Sub Tpe_change()

Tpe.Text = Application.WorksheetFunction.Proper(Tpe.Text)

End Sub

Private Sub Statut_change()

Statut = UCase(Statut)

End Sub

Private Sub Denom_change()

Denom = UCase(Denom)

End Sub

Private Sub Nom_Change()

nom.Value = UCase(nom)

End Sub

Private Sub Prenom_Change()

prenom.Value = Application.WorksheetFunction.Proper(prenom.Value)

End Sub

Private Sub Adresse_Change()

adresse.Text = Application.WorksheetFunction.Proper(adresse.Text)

End Sub

Private Sub Code_Postal_Change()

code_postal.Value = Format(code_postal.Value, "00"" ""000")

End Sub

Private Sub VILLE_AfterUpdate()

ville.Value = UCase(ville)

End Sub

Private Sub Telephone_AfterUpdate()

telephone.Value = Format(telephone.Value, "00"" ""00"" ""00"" ""00"" ""00")

End Sub

Private Sub mail_Change()

mail.Value = LCase(mail)

End Sub

Private Sub Comentaire_Change()

comentaire.Value = LCase(comentaire)

End Sub

Private Sub CommandButton1_Click() ' AJOUTER

Dim ligne As Integer

If nom = "" Then Exit Sub

Sheets("liste_clients").Select

ligne = Range("B65536").End(xlUp).Row + 1

Range("A" & ligne).Value = Xcel

Range("B" & ligne).Value = nom.Value

Range("C" & ligne).Value = prenom.Value

Range("D" & ligne).Value = adresse.Value

Range("E" & ligne).Value = code_postal.Value

Range("F" & ligne).Value = ville.Value

Range("G" & ligne).Value = telephone.Value

Range("H" & ligne).Value = mail.Value

Range("I" & ligne).Value = comentaire.Value

Unload Me

'Range("A3:I" & Range("A65536").End(xlUp).Row).Select

'Selection.Sort Key1:=Range("A3"), Order1:=xlAscending, Header:=xlGuess, _

'OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _

'DataOption1:=xlSortNormal

Range("A1").Select

inscription.Show

End Sub

Private Sub fermer_Click() 'fermer

Unload Me

Sheets("facture").Select

End Sub

Private Sub ComboBox3_Change() '[2] LISTE des CODES

Dim Lgn

Lgn = ComboBox3.ListIndex + 1

With Tableau

Label12 = .Cells(Lgn, 1)

nom.Value = .Cells(Lgn, 2)

prenom.Value = .Cells(Lgn, 3)

adresse.Value = .Cells(Lgn, 4)

code_postal.Value = .Cells(Lgn, 5)

ville.Value = .Cells(Lgn, 6)

telephone.Value = .Cells(Lgn, 7)

mail.Value = .Cells(Lgn, 8)

comentaire.Value = .Cells(Lgn, 9)

End With

End Sub

Private Sub CommandButton4_Click() ' [3] MODIFIER

Dim Lgn

Lgn = ComboBox3.ListIndex + 1

If Lgn = 0 Then Exit Sub

With Tableau

.Cells(Lgn, 1) = ComboBox3

.Cells(Lgn, 2) = nom

.Cells(Lgn, 3) = prenom

.Cells(Lgn, 4) = adresse

.Cells(Lgn, 5) = code_postal

.Cells(Lgn, 6) = ville

.Cells(Lgn, 7) = telephone

.Cells(Lgn, 8) = mail

.Cells(Lgn, 9) = comentaire

End With

Range("A1").Select

Unload Me

Range("A2").Select

inscription.Show

End Sub

merci d'avance pour vos conseils

cedcyr

Bonjour

cedcyr a écrit :

il doit me manquer quelque chose

Oui le fichier

Comment suivre le déroulement de ta macro ?

voici mon fichier tous ne fonctionne pas encore car pour le moment je finalise le bouton nouveau client je ferais les reste ensuite

merci

Bonjour

A voir si cela te convient

Private Sub CheckBox1_Change() 'CREATION
    Xcel = Cells(1, 2) + 1
    Label12 = Xcel
Select Case CheckBox1.Value
Case True
  Label12.Caption = Application.Max(Sheets("liste_clients").Columns("A")) + 1
  Label12.Visible = True
  ComboBox3.Visible = False
  Frame1.Visible = False
Case False: Label12.Visible = False
CheckBox2.Visible = True
Frame1.Visible = True
End Select
End Sub

merci beaucoup ca marche aller je continu mes autres fonction

cedcyr

Rechercher des sujets similaires à "probleme macro formulaire"