Besoin d'aide sur une listbox VBA

fb62840

XLDnaute Impliqué
Bonjour à toutes et à tous,

Je fais appel à vous car j'ai un souci avec des listbox présentes sur un formulaire

Le problème est le suivant.
Lorsque je bascule d'un onglet à l'autre et que je reviens sur un onglet dans lequel j'ai déjà saisi des données dans la listbox je peux à nouveau saisir des données dans les champs qui alimenteront la listbox mais mon problème c'est que ce nouvel ajout supprime la ligne existante alors qu'il faudrait que la ligne des données soit ajoutée sous la ligne présente.

En détail :

Le formulaire contient 4 onglets
Sur le 2nd deux champs numériques détermineront le nombre de lignes que devront contenir les listbox des onglets 3 et 4

Sur le 3ème onglet la listbox est complétée avec le code suivant :
Code:
Private Sub CBcumulsec_Click()
Dim Ind As Integer
  ' Ajout d'unenouvelle formation
IncrementFormation = IncrementFormation + 1
  ' Vérification que l'incrémentation n'est pas supérieure au nombre de formations à enregistrer
If IncrementFormation > Nbrformations Then
    MsgBox "Vous avez choisi de renseigner " & Nbrformations & " formation(s), vous ne pouvez pas en enregistrer " & IncrementFormation & "."
    Exit Sub
End If
If IncrementFormation = Nbrformations Then
With MultiPage1
Me.MultiPage1.Value = 3
End With
End If
  ' Sinon
Me.LB_synthese_formation.AddItem Me.TB_nom_formation
Me.LB_synthese_formation.List(Me.LB_synthese_formation.ListCount - 1, 1) = Me.CB_ville_formation
Me.LB_synthese_formation.List(Me.LB_synthese_formation.ListCount - 1, 2) = Me.CB_annee_formation
Me.LB_synthese_formation.List(Me.LB_synthese_formation.ListCount - 1, 3) = Me.CB_niveau
Me.LB_synthese_formation.List(Me.LB_synthese_formation.ListCount - 1, 4) = Me.TB_connaissances_acquises
For Ind = 3 To 4
Me.CB_annee_formation = ""
Me.TB_nom_formation = ""
Me.CB_ville_formation = ""
Me.CB_niveau = ""
Me.TB_connaissances_acquises = ""
Next
End Sub
Sur le 4ème onglet la listbox est complétée avec le code suivant
Code:
Private Sub CB_cumulmen_Click()
Dim Ind As Integer
  ' Ajout d'une nouvelle expérience
  If IncrementationExperience < Nbrexperiences Then
  IncrementationExperience = IncrementationExperience + 1
  End If
  ' Vérification que l'incrémentation n'est pas supérieure au nombre d'expériences à enregistrer
  If IncrementationExperience > Nbrexperiences Then
    MsgBox "Vous avez choisi de renseigner " & Nbrexperiences & " expérience(s), vous ne pouvez pas en enregistrer " & IncrementFormation & "."
    Exit Sub
  End If
  ' Sinon
  Me.LB_synthese_experience.AddItem Me.CB_annee
  Me.LB_synthese_experience.List(Me.LB_synthese_experience.ListCount - 1, 1) = TB_nom
  Me.LB_synthese_experience.List(Me.LB_synthese_experience.ListCount - 1, 2) = Me.CB_ville
  Me.LB_synthese_experience.List(Me.LB_synthese_experience.ListCount - 1, 3) = Me.TB_poste
  Me.LB_synthese_experience.List(Me.LB_synthese_experience.ListCount - 1, 4) = Me.TB_descriptif
  For Ind = 3 To 4
  Me.CB_annee = ""
  Me.TB_nom = ""
  Me.CB_ville = ""
  Me.TB_poste = ""
  Me.TB_descriptif = ""
  If Ind = 4 Then Me.TB_nom.SetFocus
  Next Ind
End Sub
Merci beaucoup pour votre aide
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas