Probleme VBA

18client.xlsm (17.99 Ko)
capture d ecran 2017 06 18 00 02 57

Bonjour,

J’ai un problème dans ma création de formulaire

Voici la programmation

Option Explicit

Dim Ws As Worksheet

'Pour le formulaire

Private Sub UserForm_Initialize()

Dim J As Long

Dim I As Integer

ComboBox2.ColumnCount = 1 'Pour la liste déroulante Civilité

ComboBox2.List() = Array(" ", " M. ", " Mme ", " Mlle ")

Set Ws = Sheets("Client") 'Correspond au nom de votre onglet dans le fichier Excel

With Me.ComboBox1

For J = 2 To Ws.Range(" A " & Rows.Count).End(xlUp).Row

.AddItem Ws.Range(" A " & J)

Next J

End With

For I = 1 To 7

Me.Controls(" TextBox " & I).Visible = True

Next I

End Sub

'Pour la liste déroulante Code client

Private Sub ComboBox1_Change()

Dim Ligne As Long

Dim I As Integer

If Me.ComboBox1.ListIndex = -1 Then Exit Sub

Ligne = Me.ComboBox1.ListIndex + 2

ComboBox2 = Ws.Cells(Ligne, " B ")

For I = 1 To 7

Me.Controls(" TextBox " & I) = Ws.Cells(Ligne, I + 2)

Next I

End Sub

'Pour le bouton Nouveau contact

Private Sub CommandButton1_Click()

Dim L As Integer

If MsgBox(" Confirmez-vous l'insertion de ce nouveau contact ? ", vbYesNo, " Demande de confirmation d'ajout ") = vbYes Then

L = Sheets(" Client ").Range(" a65536 ").End(xlUp).Row + 1 'Pour placer le nouvel enregistrement à la première ligne de tableau non vide

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 = TextBox4

Range(" G " & L).Value = TextBox5

Range(" H " & L).Value = TextBox6

Range(" I " & L).Value = TextBox7

End If

End Sub

'Pour le bouton Modifier

Private Sub CommandButton2_Click()

Dim Ligne As Long

Dim I As Integer

If MsgBox("Confirmez-vous la modification de ce contact ?", vbYesNo, "Demande de confirmation de modification") = vbYes Then

If Me.ComboBox1.ListIndex = -1 Then Exit Sub

Ligne = Me.ComboBox1.ListIndex + 2

Ws.Cells(Ligne, "B") = ComboBox2

For I = 1 To 7

If Me.Controls("TextBox" & I).Visible = True Then

Ws.Cells(Ligne, I + 2) = Me.Controls("TextBox" & I)

End If

Next I

End If

End Sub

'Pour le bouton Quitter

Private Sub CommandButton3_Click()

Unload Me

End Sub

Et quand je fais F5 j’ai à l’écran voire la pièce jointe

Je ne comprend pas

Merci pour votre aide

cordialement

Bonjour,

Ajoute le fichier à ton message afin de le déboguer rapidement.

Bonjour et bienvenue sur le forum

Un essai à tester. Te convient-il ?

Bye !

31client.xlsm (23.10 Ko)

Bonjour à tous

Ma contribution

27client.xlsm (23.58 Ko)

Bonjour et bienvenu(e).

Il y avait plusieurs anomalies.

Cdlt.

60client.xlsm (26.28 Ko)
M12 a écrit :

Bonjour à tous

Ma contribution

Merci

Cordialement

pouldohan


Jean-Eric a écrit :

Bonjour et bienvenu(e).

Il y avait plusieurs anomalies.

Cdlt.

Merci Jean Eric c'est parfait merci pour ton aide

Pouldohan

Rechercher des sujets similaires à "probleme vba"