Pages

[XL-2007] AJOUTER DES LIGNES A UNE LISTBOX sujet

mercredi 29 janvier 2014




Bonsoir,

Je réalise un programme dans lequel je suis amené à compléter une listbox à la demande de l'utilisateur. Vous trouverez ci dessous une version d'essai correspondant à mon besoin. Il me sert à tester le fonctionnement de ce morceaux pour lequel je "pêche":?:?

J'ai un formulaire Userform1 avec une listbox et 3 boutons : 1 bouton remplir la listbox (en automatique à l'ouverture sur mon programme), 1 bouton ajout d'une ligne qui ouvre un autre userform, 1 bouton qui renvoie toutes les données de la listbox vers une feuille excel.

ci dessous le code :

Code:


Private Sub CommandButton1_Click()

'charge le contenu de la listbox list

UserForm1.list.RowSource = "f1!a2:b7"

End Sub

Private Sub CommandButton2_Click()

'charge le form 2 pour ajout et ajoute une liste à la listbox list2

Load UserForm2
UserForm2.List2.RowSource = "f2!a2:b7"
UserForm2.Show

End Sub

Private Sub CommandButton3_Click()

'copier le contenu de listbox list dans la feuille excel f1

Sheets("f1").Range("d2").Resize(UserForm1.list.ListCount, 2) = UserForm1.list.list()
Unload UserForm1

End Sub


Mon problème réside dans le second formulaire userform2 dans lequel se trouve une listbox list2 dans le quel l'utilisateur coche une case suite réglage de la propriété liststyle à fmListStyleOption. L'utilisateur coche une ou plusieurs lignes et clique sur un bouton commandbutton permet de valider son choix et normalement ajouter cette ou ces ligne(s) dans la listbox list1 dans Userform1.

J'obtient le message suivant dans la configuration actuelle : erreur d'éxécution 70, accés refusé.
J'ai essayé plusieurs formes sans succès et j'ai eu des messages différents mais jamais un résultat.
Ci dessous le code :

Code:


Private Sub CommandButton1_Click()

MsgBox UserForm2.List2.Value
UserForm1.list.SetFocus
UserForm1.list.AddItem UserForm2.List2.Value

Unload UserForm2

End Sub


Merci encore pour votre aide précieuse




Aucun commentaire:

Enregistrer un commentaire