Modifier ou supprimer Via listbox

Salut cher Forum

J'aimerais via mon listbox modifier ou supprimer des enregistrements dans ma base

Comme ceci:

  • Double Click sur une ligne de mon listbox pour la sélectionner et récupérer les données correspondantes dans les combo et textbox
  • Modifier ou supprimer l'enregistrement sélectionné dans ma base de données
Merci à tous

67rech1.xlsm (150.96 Ko)

Bonsoir KTM,

Il est tard pour te répondre sur ton besoin. Je te laisse déjà une partie de code que tu peux installer et développer demain.

Private Sub ListBox2_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Lin = ListBox2.ListIndex 'Note faire Dim Lin as Integer après Option Explicit
TextBox1.Text = ListBox2.List(Lin, 0)
ComboBox7.Text = ListBox2.List(Lin, 9)
'Ajouter de même pour tous les autres textbox et combobox
End Sub

Une fois tous ces contrôles inclus dans ce DblClick. On pourra voir la suite.

Ne pas inclure le Textbox6 car il a une procédure change et donc cela va modifier la valeur ligne cliquée.

A suivre...

Bonsoir KTM,

Il est tard pour te répondre sur ton besoin. Je te laisse déjà une partie de code que tu peux installer et développer demain.

Private Sub ListBox2_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Lin = ListBox2.ListIndex 'Note faire Dim Lin as Integer après Option Explicit
TextBox1.Text = ListBox2.List(Lin, 0)
ComboBox7.Text = ListBox2.List(Lin, 9)
'Ajouter de même pour tous les autres textbox et combobox
End Sub

Une fois tous ces contrôles inclus dans ce DblClick. On pourra voir la suite.

Ne pas inclure le Textbox6 car il a une procédure change et donc cela va modifier la valeur ligne cliquée.

A suivre...

Merci la première étape de ma préoccupation est franchie

106rech1.xlsm (151.87 Ko)

Bonjour KTM,

Ok, tu peux donc faire la suite ce matin ou dans la journée. Voici le code pour modifier. Une fois entrée le(s) changement(s) dans le(s) contrôle(s) du formulaire. Au clic sur le bouton Modifier cela va directement se voir sur ta sortie Liste.

Private Sub Modifier_Click()
With Sheets("Grille_de_Dispensation") 'Modif sur la base de la 1ière feuille
.Cells(Lin + 2, "E") = TextBox5.Text  'à la cellule destinée et se répercutera immédiatement sur listBox2
End With                              'Faire de même pour les autres contrôles
End Sub                               'Toujours garder Lin+2, changer seulement colonne

Bons tests, bonne continuation.

Bonjour KTM,

Ok, tu peux donc faire la suite ce matin ou dans la journée. Voici le code pour modifier. Une fois entrée le(s) changement(s) dans le(s) contrôle(s) du formulaire. Au clic sur le bouton Modifier cela va directement se voir sur ta sortie Liste.

Private Sub Modifier_Click()
With Sheets("Grille_de_Dispensation") 'Modif sur la base de la 1ière feuille
.Cells(Lin + 2, "E") = TextBox5.Text  'à la cellule destinée et se répercutera immédiatement sur listBox2
End With                              'Faire de même pour les autres contrôles
End Sub                               'Toujours garder Lin+2, changer seulement colonne

Bons tests, bonne continuation.

Merci infiniment

Suivant cette logique je pense pouvoir résoudre la suite de mon problème.

Merci pour ce coup de maître.

A nouveau,

Pour le dernier besoin, celui pour supprimer. Après double-click sur une ligne de la ListBox.

Je te propose ce code.

Private Sub SupprimerSelection_Click()
'Modif sur la base de la 1ière feuille à la ligne double-clickée
Worksheets("Grille_de_Dispensation").Rows(Lin + 2).Delete
Annuler_Click               'Raz des contrôles
End Sub

Bonne fin de journée.

Bonjour,

Fait avec un pgm générique.

ColVisu = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11) ' colonnes à visualiser - à adapter

La saisie du code client se fait dans un ComboBox intuitif qui affiche une liste au fur et à mesure de la frappe des caractères du code client.

Pour 556, on a 2 clients.

Sur le pgm actuel, on a dans le ListBox 2 clients (5 lignes)

Boisgontier

sans titre

Suite,

Pour conserver tes formats de date dans ton TextBox4 (Echéance) dans le code du ListBox2_DblClick:

ComboBox7.Text = .List(Lin, 9)
TextBox4.Text = Format(CDate(.List(Lin, 10)), "dd-mmm-yy")
Modifier.Locked = False
SupprimerSelection.Locked = False
End With

End Sub

Puis dans la base sur ta 1ière feuille, colonne K, dans le code du Modifier_Click()

.Cells(Lin + 2, "K") = CDate(TextBox4.Text)

Bonne continuation

Rechercher des sujets similaires à "modifier supprimer via listbox"