Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Bonsoir,
Tu ne peux pas utiliser Selected sans qualificatif. VBA ne peut pas
deviner tout seul quel ListBox (ou CheckBox) est concerné.
Donc :
For i = 1 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then UserForm2.TextBox10 > UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13
Ou plus de lignes, mais peut-être plus lisible :
With ListBox1
For i = 1 to .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) & Chr(13)
End If
Next i
End With
If .Selected(i) suffit ; le "= True" ne sert à rien.
Par ailleurs pourquoi commences-tu à 1 comme valeur de i ?
Sauf si "Option Base 1" dans le module, en principe, il faudrait com-
mencer à 0 (zéro). Avec
For i = 1 to .ListCount - 1
Le nombre de passages dans la boucle n'est pas égal à ListCount
il manque un passage.
a écrit dans le message de
news:Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Bonsoir,
Tu ne peux pas utiliser Selected sans qualificatif. VBA ne peut pas
deviner tout seul quel ListBox (ou CheckBox) est concerné.
Donc :
For i = 1 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then UserForm2.TextBox10 > UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13
Ou plus de lignes, mais peut-être plus lisible :
With ListBox1
For i = 1 to .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) & Chr(13)
End If
Next i
End With
If .Selected(i) suffit ; le "= True" ne sert à rien.
Par ailleurs pourquoi commences-tu à 1 comme valeur de i ?
Sauf si "Option Base 1" dans le module, en principe, il faudrait com-
mencer à 0 (zéro). Avec
For i = 1 to .ListCount - 1
Le nombre de passages dans la boucle n'est pas égal à ListCount
il manque un passage.
<jacques-zeziola@wanadoo.fr> a écrit dans le message de
news:5ee3abf8.0311151331.2d8649d8@posting.google.com...
Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Bonsoir,
Tu ne peux pas utiliser Selected sans qualificatif. VBA ne peut pas
deviner tout seul quel ListBox (ou CheckBox) est concerné.
Donc :
For i = 1 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then UserForm2.TextBox10 > UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13
Ou plus de lignes, mais peut-être plus lisible :
With ListBox1
For i = 1 to .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) & Chr(13)
End If
Next i
End With
If .Selected(i) suffit ; le "= True" ne sert à rien.
Par ailleurs pourquoi commences-tu à 1 comme valeur de i ?
Sauf si "Option Base 1" dans le module, en principe, il faudrait com-
mencer à 0 (zéro). Avec
For i = 1 to .ListCount - 1
Le nombre de passages dans la boucle n'est pas égal à ListCount
il manque un passage.
a écrit dans le message de
news:Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
, Michel Denis, Michel GABOLY, le Forum
Je vous remercie tous les trois de vos réponses.
, j'essayerai ton astuce pour voir ce que cela donne, pour
information personnelle.
Michel Denis, j'ai essayer avec : If Me.Selected(i) = True
et cela me mets aussi Argument non valide.
Michel GABOLY, j'ai utilisé ton code,J'ai du ajouter la déclaration de
la variable, et j'ai essayé avec For i = 1 et for i = 0 je n'ai point
vu de différence, es-ce normale?
Dim i As Integer
With ListBox1
For i = 1 To .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
Encore merci, a vous trois cela faisait une plombe que je tourné et
retourné ce code en vain, Jacques
"Michel Gaboly" wrote in message
news:...
Bonsoir,
Tu ne peux pas utiliser Selected sans qualificatif. VBA ne peut pas
deviner tout seul quel ListBox (ou CheckBox) est concerné.
Donc :
For i = 1 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then UserForm2.TextBox10 > > UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13
Ou plus de lignes, mais peut-être plus lisible :
With ListBox1
For i = 1 to .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
If .Selected(i) suffit ; le "= True" ne sert à rien.
Par ailleurs pourquoi commences-tu à 1 comme valeur de i ?
Sauf si "Option Base 1" dans le module, en principe, il faudrait com-
mencer à 0 (zéro). Avec
For i = 1 to .ListCount - 1
Le nombre de passages dans la boucle n'est pas égal à ListCount
il manque un passage.
a écrit dans le message de
news:Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
J@c, Michel Denis, Michel GABOLY, le Forum
Je vous remercie tous les trois de vos réponses.
J@c, j'essayerai ton astuce pour voir ce que cela donne, pour
information personnelle.
Michel Denis, j'ai essayer avec : If Me.Selected(i) = True
et cela me mets aussi Argument non valide.
Michel GABOLY, j'ai utilisé ton code,J'ai du ajouter la déclaration de
la variable, et j'ai essayé avec For i = 1 et for i = 0 je n'ai point
vu de différence, es-ce normale?
Dim i As Integer
With ListBox1
For i = 1 To .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
Encore merci, a vous trois cela faisait une plombe que je tourné et
retourné ce code en vain, Jacques
"Michel Gaboly" <michel@suppgaboly.com> wrote in message
news:<Oya3fH9qDHA.2188@TK2MSFTNGP11.phx.gbl>...
Bonsoir,
Tu ne peux pas utiliser Selected sans qualificatif. VBA ne peut pas
deviner tout seul quel ListBox (ou CheckBox) est concerné.
Donc :
For i = 1 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then UserForm2.TextBox10 > > UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13
Ou plus de lignes, mais peut-être plus lisible :
With ListBox1
For i = 1 to .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
If .Selected(i) suffit ; le "= True" ne sert à rien.
Par ailleurs pourquoi commences-tu à 1 comme valeur de i ?
Sauf si "Option Base 1" dans le module, en principe, il faudrait com-
mencer à 0 (zéro). Avec
For i = 1 to .ListCount - 1
Le nombre de passages dans la boucle n'est pas égal à ListCount
il manque un passage.
<jacques-zeziola@wanadoo.fr> a écrit dans le message de
news:5ee3abf8.0311151331.2d8649d8@posting.google.com...
Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
, Michel Denis, Michel GABOLY, le Forum
Je vous remercie tous les trois de vos réponses.
, j'essayerai ton astuce pour voir ce que cela donne, pour
information personnelle.
Michel Denis, j'ai essayer avec : If Me.Selected(i) = True
et cela me mets aussi Argument non valide.
Michel GABOLY, j'ai utilisé ton code,J'ai du ajouter la déclaration de
la variable, et j'ai essayé avec For i = 1 et for i = 0 je n'ai point
vu de différence, es-ce normale?
Dim i As Integer
With ListBox1
For i = 1 To .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
Encore merci, a vous trois cela faisait une plombe que je tourné et
retourné ce code en vain, Jacques
"Michel Gaboly" wrote in message
news:...
Bonsoir,
Tu ne peux pas utiliser Selected sans qualificatif. VBA ne peut pas
deviner tout seul quel ListBox (ou CheckBox) est concerné.
Donc :
For i = 1 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then UserForm2.TextBox10 > > UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13
Ou plus de lignes, mais peut-être plus lisible :
With ListBox1
For i = 1 to .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
If .Selected(i) suffit ; le "= True" ne sert à rien.
Par ailleurs pourquoi commences-tu à 1 comme valeur de i ?
Sauf si "Option Base 1" dans le module, en principe, il faudrait com-
mencer à 0 (zéro). Avec
For i = 1 to .ListCount - 1
Le nombre de passages dans la boucle n'est pas égal à ListCount
il manque un passage.
a écrit dans le message de
news:Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Rebonjour,
La différence n'intervient que si le premier élément est sélectionné :
Entre ce code (Il faut un UserForm avec un ListBox nommé ListBox1
et un CommandButton nommé BOK
Private Sub UserForm_Initialize()
Dim i As Integer
For i = 1 To 10
ListBox1.AddItem i
Next i
End Sub
Private Sub BOK_Click()
Dim i As Integer
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox i
End If
Next i
End With
End Sub
Appuie ensuite sur F4 pour afficher le UserForm.
Clique sur le premier élément de la liste (le chiffres), et clique sur
le bouton. Un message s'affiche avec la valeur de 1 (0, zéro).
Modifie ensuite la ligne "For ..." ainsi :
For i = 1 To .ListCount - 1
Recommence le test (affichage du UserForm, sélection du premier
élément et clic sur le bouton).
Aucun message n'est affiché, car .Selected(i) n'est vrai que pour = 0,
qui n'est pas testé dans cette seconde version.
De la même façon, avec un ListBox pour lequel il n'y a pas de Multi-
selection, au lieu de Selected, on teste la propriété ListBox, dont la
valeur est "-1" quand aucun élément n'est sélectionné, et "n-1", quand
le enième élément est sélectionné (donc 0 pour le premier élément).
Voilà.
a écrit dans le message de
news:, Michel Denis, Michel GABOLY, le Forum
Je vous remercie tous les trois de vos réponses.
, j'essayerai ton astuce pour voir ce que cela donne, pour
information personnelle.
Michel Denis, j'ai essayer avec : If Me.Selected(i) = True
et cela me mets aussi Argument non valide.
Michel GABOLY, j'ai utilisé ton code,J'ai du ajouter la déclaration de
la variable, et j'ai essayé avec For i = 1 et for i = 0 je n'ai point
vu de différence, es-ce normale?
Dim i As Integer
With ListBox1
For i = 1 To .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
Encore merci, a vous trois cela faisait une plombe que je tourné et
retourné ce code en vain, Jacques
"Michel Gaboly" wrote in message
news:...Bonsoir,
Tu ne peux pas utiliser Selected sans qualificatif. VBA ne peut pas
deviner tout seul quel ListBox (ou CheckBox) est concerné.
Donc :
For i = 1 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then UserForm2.TextBox10 > > > UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13
Ou plus de lignes, mais peut-être plus lisible :
With ListBox1
For i = 1 to .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)End If
Next i
End With
If .Selected(i) suffit ; le "= True" ne sert à rien.
Par ailleurs pourquoi commences-tu à 1 comme valeur de i ?
Sauf si "Option Base 1" dans le module, en principe, il faudrait com-
mencer à 0 (zéro). Avec
For i = 1 to .ListCount - 1
Le nombre de passages dans la boucle n'est pas égal à ListCount
il manque un passage.
a écrit dans le message de
news:Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Rebonjour,
La différence n'intervient que si le premier élément est sélectionné :
Entre ce code (Il faut un UserForm avec un ListBox nommé ListBox1
et un CommandButton nommé BOK
Private Sub UserForm_Initialize()
Dim i As Integer
For i = 1 To 10
ListBox1.AddItem i
Next i
End Sub
Private Sub BOK_Click()
Dim i As Integer
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox i
End If
Next i
End With
End Sub
Appuie ensuite sur F4 pour afficher le UserForm.
Clique sur le premier élément de la liste (le chiffres), et clique sur
le bouton. Un message s'affiche avec la valeur de 1 (0, zéro).
Modifie ensuite la ligne "For ..." ainsi :
For i = 1 To .ListCount - 1
Recommence le test (affichage du UserForm, sélection du premier
élément et clic sur le bouton).
Aucun message n'est affiché, car .Selected(i) n'est vrai que pour = 0,
qui n'est pas testé dans cette seconde version.
De la même façon, avec un ListBox pour lequel il n'y a pas de Multi-
selection, au lieu de Selected, on teste la propriété ListBox, dont la
valeur est "-1" quand aucun élément n'est sélectionné, et "n-1", quand
le enième élément est sélectionné (donc 0 pour le premier élément).
Voilà.
<jacques-zeziola@wanadoo.fr> a écrit dans le message de
news:5ee3abf8.0311160144.2541ef63@posting.google.com...
J@c, Michel Denis, Michel GABOLY, le Forum
Je vous remercie tous les trois de vos réponses.
J@c, j'essayerai ton astuce pour voir ce que cela donne, pour
information personnelle.
Michel Denis, j'ai essayer avec : If Me.Selected(i) = True
et cela me mets aussi Argument non valide.
Michel GABOLY, j'ai utilisé ton code,J'ai du ajouter la déclaration de
la variable, et j'ai essayé avec For i = 1 et for i = 0 je n'ai point
vu de différence, es-ce normale?
Dim i As Integer
With ListBox1
For i = 1 To .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
Encore merci, a vous trois cela faisait une plombe que je tourné et
retourné ce code en vain, Jacques
"Michel Gaboly" <michel@suppgaboly.com> wrote in message
news:<Oya3fH9qDHA.2188@TK2MSFTNGP11.phx.gbl>...
Bonsoir,
Tu ne peux pas utiliser Selected sans qualificatif. VBA ne peut pas
deviner tout seul quel ListBox (ou CheckBox) est concerné.
Donc :
For i = 1 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then UserForm2.TextBox10 > > > UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13
Ou plus de lignes, mais peut-être plus lisible :
With ListBox1
For i = 1 to .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
If .Selected(i) suffit ; le "= True" ne sert à rien.
Par ailleurs pourquoi commences-tu à 1 comme valeur de i ?
Sauf si "Option Base 1" dans le module, en principe, il faudrait com-
mencer à 0 (zéro). Avec
For i = 1 to .ListCount - 1
Le nombre de passages dans la boucle n'est pas égal à ListCount
il manque un passage.
<jacques-zeziola@wanadoo.fr> a écrit dans le message de
news:5ee3abf8.0311151331.2d8649d8@posting.google.com...
Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Rebonjour,
La différence n'intervient que si le premier élément est sélectionné :
Entre ce code (Il faut un UserForm avec un ListBox nommé ListBox1
et un CommandButton nommé BOK
Private Sub UserForm_Initialize()
Dim i As Integer
For i = 1 To 10
ListBox1.AddItem i
Next i
End Sub
Private Sub BOK_Click()
Dim i As Integer
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox i
End If
Next i
End With
End Sub
Appuie ensuite sur F4 pour afficher le UserForm.
Clique sur le premier élément de la liste (le chiffres), et clique sur
le bouton. Un message s'affiche avec la valeur de 1 (0, zéro).
Modifie ensuite la ligne "For ..." ainsi :
For i = 1 To .ListCount - 1
Recommence le test (affichage du UserForm, sélection du premier
élément et clic sur le bouton).
Aucun message n'est affiché, car .Selected(i) n'est vrai que pour = 0,
qui n'est pas testé dans cette seconde version.
De la même façon, avec un ListBox pour lequel il n'y a pas de Multi-
selection, au lieu de Selected, on teste la propriété ListBox, dont la
valeur est "-1" quand aucun élément n'est sélectionné, et "n-1", quand
le enième élément est sélectionné (donc 0 pour le premier élément).
Voilà.
a écrit dans le message de
news:, Michel Denis, Michel GABOLY, le Forum
Je vous remercie tous les trois de vos réponses.
, j'essayerai ton astuce pour voir ce que cela donne, pour
information personnelle.
Michel Denis, j'ai essayer avec : If Me.Selected(i) = True
et cela me mets aussi Argument non valide.
Michel GABOLY, j'ai utilisé ton code,J'ai du ajouter la déclaration de
la variable, et j'ai essayé avec For i = 1 et for i = 0 je n'ai point
vu de différence, es-ce normale?
Dim i As Integer
With ListBox1
For i = 1 To .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
Encore merci, a vous trois cela faisait une plombe que je tourné et
retourné ce code en vain, Jacques
"Michel Gaboly" wrote in message
news:...Bonsoir,
Tu ne peux pas utiliser Selected sans qualificatif. VBA ne peut pas
deviner tout seul quel ListBox (ou CheckBox) est concerné.
Donc :
For i = 1 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then UserForm2.TextBox10 > > > UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13
Ou plus de lignes, mais peut-être plus lisible :
With ListBox1
For i = 1 to .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)End If
Next i
End With
If .Selected(i) suffit ; le "= True" ne sert à rien.
Par ailleurs pourquoi commences-tu à 1 comme valeur de i ?
Sauf si "Option Base 1" dans le module, en principe, il faudrait com-
mencer à 0 (zéro). Avec
For i = 1 to .ListCount - 1
Le nombre de passages dans la boucle n'est pas égal à ListCount
il manque un passage.
a écrit dans le message de
news:Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Michem Gaboly,Hervé, le forum
Merci, Hervé
Alors dans mon cas comment je sais lequel des deux je dois utilisé.
Merci, jacques
"Michel Gaboly" wrote in message news:<#...Rebonjour,
La différence n'intervient que si le premier élément est sélectionné :
Entre ce code (Il faut un UserForm avec un ListBox nommé ListBox1
et un CommandButton nommé BOK
Private Sub UserForm_Initialize()
Dim i As Integer
For i = 1 To 10
ListBox1.AddItem i
Next i
End Sub
Private Sub BOK_Click()
Dim i As Integer
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox i
End If
Next i
End With
End Sub
Appuie ensuite sur F4 pour afficher le UserForm.
Clique sur le premier élément de la liste (le chiffres), et clique sur
le bouton. Un message s'affiche avec la valeur de 1 (0, zéro).
Modifie ensuite la ligne "For ..." ainsi :
For i = 1 To .ListCount - 1
Recommence le test (affichage du UserForm, sélection du premier
élément et clic sur le bouton).
Aucun message n'est affiché, car .Selected(i) n'est vrai que pour = 0,
qui n'est pas testé dans cette seconde version.
De la même façon, avec un ListBox pour lequel il n'y a pas de Multi-
selection, au lieu de Selected, on teste la propriété ListBox, dont la
valeur est "-1" quand aucun élément n'est sélectionné, et "n-1", quand
le enième élément est sélectionné (donc 0 pour le premier élément).
Voilà.
a écrit dans le message de
news:, Michel Denis, Michel GABOLY, le Forum
Je vous remercie tous les trois de vos réponses.
, j'essayerai ton astuce pour voir ce que cela donne, pour
information personnelle.
Michel Denis, j'ai essayer avec : If Me.Selected(i) = True
et cela me mets aussi Argument non valide.
Michel GABOLY, j'ai utilisé ton code,J'ai du ajouter la déclaration de
la variable, et j'ai essayé avec For i = 1 et for i = 0 je n'ai point
vu de différence, es-ce normale?
Dim i As Integer
With ListBox1
For i = 1 To .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
Encore merci, a vous trois cela faisait une plombe que je tourné et
retourné ce code en vain, Jacques
"Michel Gaboly" wrote in message
news:...Bonsoir,
Tu ne peux pas utiliser Selected sans qualificatif. VBA ne peut pas
deviner tout seul quel ListBox (ou CheckBox) est concerné.
Donc :
For i = 1 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then UserForm2.TextBox10 > > > > UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13
Ou plus de lignes, mais peut-être plus lisible :
With ListBox1
For i = 1 to .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)End If
Next i
End With
If .Selected(i) suffit ; le "= True" ne sert à rien.
Par ailleurs pourquoi commences-tu à 1 comme valeur de i ?
Sauf si "Option Base 1" dans le module, en principe, il faudrait com-
mencer à 0 (zéro). Avec
For i = 1 to .ListCount - 1
Le nombre de passages dans la boucle n'est pas égal à ListCount
il manque un passage.
a écrit dans le message de
news:Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Michem Gaboly,Hervé, le forum
Merci, Hervé
Alors dans mon cas comment je sais lequel des deux je dois utilisé.
Merci, jacques
"Michel Gaboly" <michel@suppgaboly.com> wrote in message news:<#GTQkIErDHA.2772@TK2MSFTNGP12.phx.gbl>...
Rebonjour,
La différence n'intervient que si le premier élément est sélectionné :
Entre ce code (Il faut un UserForm avec un ListBox nommé ListBox1
et un CommandButton nommé BOK
Private Sub UserForm_Initialize()
Dim i As Integer
For i = 1 To 10
ListBox1.AddItem i
Next i
End Sub
Private Sub BOK_Click()
Dim i As Integer
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox i
End If
Next i
End With
End Sub
Appuie ensuite sur F4 pour afficher le UserForm.
Clique sur le premier élément de la liste (le chiffres), et clique sur
le bouton. Un message s'affiche avec la valeur de 1 (0, zéro).
Modifie ensuite la ligne "For ..." ainsi :
For i = 1 To .ListCount - 1
Recommence le test (affichage du UserForm, sélection du premier
élément et clic sur le bouton).
Aucun message n'est affiché, car .Selected(i) n'est vrai que pour = 0,
qui n'est pas testé dans cette seconde version.
De la même façon, avec un ListBox pour lequel il n'y a pas de Multi-
selection, au lieu de Selected, on teste la propriété ListBox, dont la
valeur est "-1" quand aucun élément n'est sélectionné, et "n-1", quand
le enième élément est sélectionné (donc 0 pour le premier élément).
Voilà.
<jacques-zeziola@wanadoo.fr> a écrit dans le message de
news:5ee3abf8.0311160144.2541ef63@posting.google.com...
J@c, Michel Denis, Michel GABOLY, le Forum
Je vous remercie tous les trois de vos réponses.
J@c, j'essayerai ton astuce pour voir ce que cela donne, pour
information personnelle.
Michel Denis, j'ai essayer avec : If Me.Selected(i) = True
et cela me mets aussi Argument non valide.
Michel GABOLY, j'ai utilisé ton code,J'ai du ajouter la déclaration de
la variable, et j'ai essayé avec For i = 1 et for i = 0 je n'ai point
vu de différence, es-ce normale?
Dim i As Integer
With ListBox1
For i = 1 To .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
Encore merci, a vous trois cela faisait une plombe que je tourné et
retourné ce code en vain, Jacques
"Michel Gaboly" <michel@suppgaboly.com> wrote in message
news:<Oya3fH9qDHA.2188@TK2MSFTNGP11.phx.gbl>...
Bonsoir,
Tu ne peux pas utiliser Selected sans qualificatif. VBA ne peut pas
deviner tout seul quel ListBox (ou CheckBox) est concerné.
Donc :
For i = 1 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then UserForm2.TextBox10 > > > > UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13
Ou plus de lignes, mais peut-être plus lisible :
With ListBox1
For i = 1 to .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
If .Selected(i) suffit ; le "= True" ne sert à rien.
Par ailleurs pourquoi commences-tu à 1 comme valeur de i ?
Sauf si "Option Base 1" dans le module, en principe, il faudrait com-
mencer à 0 (zéro). Avec
For i = 1 to .ListCount - 1
Le nombre de passages dans la boucle n'est pas égal à ListCount
il manque un passage.
<jacques-zeziola@wanadoo.fr> a écrit dans le message de
news:5ee3abf8.0311151331.2d8649d8@posting.google.com...
Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Michem Gaboly,Hervé, le forum
Merci, Hervé
Alors dans mon cas comment je sais lequel des deux je dois utilisé.
Merci, jacques
"Michel Gaboly" wrote in message news:<#...Rebonjour,
La différence n'intervient que si le premier élément est sélectionné :
Entre ce code (Il faut un UserForm avec un ListBox nommé ListBox1
et un CommandButton nommé BOK
Private Sub UserForm_Initialize()
Dim i As Integer
For i = 1 To 10
ListBox1.AddItem i
Next i
End Sub
Private Sub BOK_Click()
Dim i As Integer
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox i
End If
Next i
End With
End Sub
Appuie ensuite sur F4 pour afficher le UserForm.
Clique sur le premier élément de la liste (le chiffres), et clique sur
le bouton. Un message s'affiche avec la valeur de 1 (0, zéro).
Modifie ensuite la ligne "For ..." ainsi :
For i = 1 To .ListCount - 1
Recommence le test (affichage du UserForm, sélection du premier
élément et clic sur le bouton).
Aucun message n'est affiché, car .Selected(i) n'est vrai que pour = 0,
qui n'est pas testé dans cette seconde version.
De la même façon, avec un ListBox pour lequel il n'y a pas de Multi-
selection, au lieu de Selected, on teste la propriété ListBox, dont la
valeur est "-1" quand aucun élément n'est sélectionné, et "n-1", quand
le enième élément est sélectionné (donc 0 pour le premier élément).
Voilà.
a écrit dans le message de
news:, Michel Denis, Michel GABOLY, le Forum
Je vous remercie tous les trois de vos réponses.
, j'essayerai ton astuce pour voir ce que cela donne, pour
information personnelle.
Michel Denis, j'ai essayer avec : If Me.Selected(i) = True
et cela me mets aussi Argument non valide.
Michel GABOLY, j'ai utilisé ton code,J'ai du ajouter la déclaration de
la variable, et j'ai essayé avec For i = 1 et for i = 0 je n'ai point
vu de différence, es-ce normale?
Dim i As Integer
With ListBox1
For i = 1 To .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
Encore merci, a vous trois cela faisait une plombe que je tourné et
retourné ce code en vain, Jacques
"Michel Gaboly" wrote in message
news:...Bonsoir,
Tu ne peux pas utiliser Selected sans qualificatif. VBA ne peut pas
deviner tout seul quel ListBox (ou CheckBox) est concerné.
Donc :
For i = 1 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then UserForm2.TextBox10 > > > > UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13
Ou plus de lignes, mais peut-être plus lisible :
With ListBox1
For i = 1 to .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)End If
Next i
End With
If .Selected(i) suffit ; le "= True" ne sert à rien.
Par ailleurs pourquoi commences-tu à 1 comme valeur de i ?
Sauf si "Option Base 1" dans le module, en principe, il faudrait com-
mencer à 0 (zéro). Avec
For i = 1 to .ListCount - 1
Le nombre de passages dans la boucle n'est pas égal à ListCount
il manque un passage.
a écrit dans le message de
news:Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Michem Gaboly,Hervé, le forum
Merci, Hervé
Alors dans mon cas comment je sais lequel des deux je dois utilisé.
Merci, jacques
"Michel Gaboly" wrote in message news:<#...Rebonjour,
La différence n'intervient que si le premier élément est sélectionné :
Entre ce code (Il faut un UserForm avec un ListBox nommé ListBox1
et un CommandButton nommé BOK
Private Sub UserForm_Initialize()
Dim i As Integer
For i = 1 To 10
ListBox1.AddItem i
Next i
End Sub
Private Sub BOK_Click()
Dim i As Integer
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox i
End If
Next i
End With
End Sub
Appuie ensuite sur F4 pour afficher le UserForm.
Clique sur le premier élément de la liste (le chiffres), et clique sur
le bouton. Un message s'affiche avec la valeur de 1 (0, zéro).
Modifie ensuite la ligne "For ..." ainsi :
For i = 1 To .ListCount - 1
Recommence le test (affichage du UserForm, sélection du premier
élément et clic sur le bouton).
Aucun message n'est affiché, car .Selected(i) n'est vrai que pour = 0,
qui n'est pas testé dans cette seconde version.
De la même façon, avec un ListBox pour lequel il n'y a pas de Multi-
selection, au lieu de Selected, on teste la propriété ListBox, dont la
valeur est "-1" quand aucun élément n'est sélectionné, et "n-1", quand
le enième élément est sélectionné (donc 0 pour le premier élément).
Voilà.
a écrit dans le message de
news:, Michel Denis, Michel GABOLY, le Forum
Je vous remercie tous les trois de vos réponses.
, j'essayerai ton astuce pour voir ce que cela donne, pour
information personnelle.
Michel Denis, j'ai essayer avec : If Me.Selected(i) = True
et cela me mets aussi Argument non valide.
Michel GABOLY, j'ai utilisé ton code,J'ai du ajouter la déclaration de
la variable, et j'ai essayé avec For i = 1 et for i = 0 je n'ai point
vu de différence, es-ce normale?
Dim i As Integer
With ListBox1
For i = 1 To .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
Encore merci, a vous trois cela faisait une plombe que je tourné et
retourné ce code en vain, Jacques
"Michel Gaboly" wrote in message
news:...Bonsoir,
Tu ne peux pas utiliser Selected sans qualificatif. VBA ne peut pas
deviner tout seul quel ListBox (ou CheckBox) est concerné.
Donc :
For i = 1 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then UserForm2.TextBox10 > > > > UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13
Ou plus de lignes, mais peut-être plus lisible :
With ListBox1
For i = 1 to .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)End If
Next i
End With
If .Selected(i) suffit ; le "= True" ne sert à rien.
Par ailleurs pourquoi commences-tu à 1 comme valeur de i ?
Sauf si "Option Base 1" dans le module, en principe, il faudrait com-
mencer à 0 (zéro). Avec
For i = 1 to .ListCount - 1
Le nombre de passages dans la boucle n'est pas égal à ListCount
il manque un passage.
a écrit dans le message de
news:Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Michem Gaboly,Hervé, le forum
Merci, Hervé
Alors dans mon cas comment je sais lequel des deux je dois utilisé.
Merci, jacques
"Michel Gaboly" <michel@suppgaboly.com> wrote in message news:<#GTQkIErDHA.2772@TK2MSFTNGP12.phx.gbl>...
Rebonjour,
La différence n'intervient que si le premier élément est sélectionné :
Entre ce code (Il faut un UserForm avec un ListBox nommé ListBox1
et un CommandButton nommé BOK
Private Sub UserForm_Initialize()
Dim i As Integer
For i = 1 To 10
ListBox1.AddItem i
Next i
End Sub
Private Sub BOK_Click()
Dim i As Integer
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox i
End If
Next i
End With
End Sub
Appuie ensuite sur F4 pour afficher le UserForm.
Clique sur le premier élément de la liste (le chiffres), et clique sur
le bouton. Un message s'affiche avec la valeur de 1 (0, zéro).
Modifie ensuite la ligne "For ..." ainsi :
For i = 1 To .ListCount - 1
Recommence le test (affichage du UserForm, sélection du premier
élément et clic sur le bouton).
Aucun message n'est affiché, car .Selected(i) n'est vrai que pour = 0,
qui n'est pas testé dans cette seconde version.
De la même façon, avec un ListBox pour lequel il n'y a pas de Multi-
selection, au lieu de Selected, on teste la propriété ListBox, dont la
valeur est "-1" quand aucun élément n'est sélectionné, et "n-1", quand
le enième élément est sélectionné (donc 0 pour le premier élément).
Voilà.
<jacques-zeziola@wanadoo.fr> a écrit dans le message de
news:5ee3abf8.0311160144.2541ef63@posting.google.com...
J@c, Michel Denis, Michel GABOLY, le Forum
Je vous remercie tous les trois de vos réponses.
J@c, j'essayerai ton astuce pour voir ce que cela donne, pour
information personnelle.
Michel Denis, j'ai essayer avec : If Me.Selected(i) = True
et cela me mets aussi Argument non valide.
Michel GABOLY, j'ai utilisé ton code,J'ai du ajouter la déclaration de
la variable, et j'ai essayé avec For i = 1 et for i = 0 je n'ai point
vu de différence, es-ce normale?
Dim i As Integer
With ListBox1
For i = 1 To .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
Encore merci, a vous trois cela faisait une plombe que je tourné et
retourné ce code en vain, Jacques
"Michel Gaboly" <michel@suppgaboly.com> wrote in message
news:<Oya3fH9qDHA.2188@TK2MSFTNGP11.phx.gbl>...
Bonsoir,
Tu ne peux pas utiliser Selected sans qualificatif. VBA ne peut pas
deviner tout seul quel ListBox (ou CheckBox) est concerné.
Donc :
For i = 1 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then UserForm2.TextBox10 > > > > UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13
Ou plus de lignes, mais peut-être plus lisible :
With ListBox1
For i = 1 to .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
If .Selected(i) suffit ; le "= True" ne sert à rien.
Par ailleurs pourquoi commences-tu à 1 comme valeur de i ?
Sauf si "Option Base 1" dans le module, en principe, il faudrait com-
mencer à 0 (zéro). Avec
For i = 1 to .ListCount - 1
Le nombre de passages dans la boucle n'est pas égal à ListCount
il manque un passage.
<jacques-zeziola@wanadoo.fr> a écrit dans le message de
news:5ee3abf8.0311151331.2d8649d8@posting.google.com...
Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Michem Gaboly,Hervé, le forum
Merci, Hervé
Alors dans mon cas comment je sais lequel des deux je dois utilisé.
Merci, jacques
"Michel Gaboly" wrote in message news:<#...Rebonjour,
La différence n'intervient que si le premier élément est sélectionné :
Entre ce code (Il faut un UserForm avec un ListBox nommé ListBox1
et un CommandButton nommé BOK
Private Sub UserForm_Initialize()
Dim i As Integer
For i = 1 To 10
ListBox1.AddItem i
Next i
End Sub
Private Sub BOK_Click()
Dim i As Integer
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox i
End If
Next i
End With
End Sub
Appuie ensuite sur F4 pour afficher le UserForm.
Clique sur le premier élément de la liste (le chiffres), et clique sur
le bouton. Un message s'affiche avec la valeur de 1 (0, zéro).
Modifie ensuite la ligne "For ..." ainsi :
For i = 1 To .ListCount - 1
Recommence le test (affichage du UserForm, sélection du premier
élément et clic sur le bouton).
Aucun message n'est affiché, car .Selected(i) n'est vrai que pour = 0,
qui n'est pas testé dans cette seconde version.
De la même façon, avec un ListBox pour lequel il n'y a pas de Multi-
selection, au lieu de Selected, on teste la propriété ListBox, dont la
valeur est "-1" quand aucun élément n'est sélectionné, et "n-1", quand
le enième élément est sélectionné (donc 0 pour le premier élément).
Voilà.
a écrit dans le message de
news:, Michel Denis, Michel GABOLY, le Forum
Je vous remercie tous les trois de vos réponses.
, j'essayerai ton astuce pour voir ce que cela donne, pour
information personnelle.
Michel Denis, j'ai essayer avec : If Me.Selected(i) = True
et cela me mets aussi Argument non valide.
Michel GABOLY, j'ai utilisé ton code,J'ai du ajouter la déclaration de
la variable, et j'ai essayé avec For i = 1 et for i = 0 je n'ai point
vu de différence, es-ce normale?
Dim i As Integer
With ListBox1
For i = 1 To .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
Encore merci, a vous trois cela faisait une plombe que je tourné et
retourné ce code en vain, Jacques
"Michel Gaboly" wrote in message
news:...Bonsoir,
Tu ne peux pas utiliser Selected sans qualificatif. VBA ne peut pas
deviner tout seul quel ListBox (ou CheckBox) est concerné.
Donc :
For i = 1 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then UserForm2.TextBox10 > > > > UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13
Ou plus de lignes, mais peut-être plus lisible :
With ListBox1
For i = 1 to .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)End If
Next i
End With
If .Selected(i) suffit ; le "= True" ne sert à rien.
Par ailleurs pourquoi commences-tu à 1 comme valeur de i ?
Sauf si "Option Base 1" dans le module, en principe, il faudrait com-
mencer à 0 (zéro). Avec
For i = 1 to .ListCount - 1
Le nombre de passages dans la boucle n'est pas égal à ListCount
il manque un passage.
a écrit dans le message de
news:Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Michel, Le forum,
Merci de ton aide.
Pour la creation d'une fiche cela fonctionne super.
Mais comme cette liste peu évolluer, il y a donc un UserForm
"UserFormRésultat" avec une possibilité de modification qui utilise la
même pratique, donc je fais "Ajout d'un nouveau cableur", le UserForm
"Ajout" s'ouvre je fais la sélection de un ou plusieur cableur dans la
ListBox je fait "valider", le TextBox del'UserForm "Resultat" est bien
rempli, mais quand je revien dans celui-ci pour faire "modifier", ces
données s'effacent.
Qu'est-ce que j'ai pu oublier?
Merci, trés beaucoup,Jacques
wrote in message news:...Michem Gaboly,Hervé, le forum
Merci, Hervé
Alors dans mon cas comment je sais lequel des deux je dois utilisé.
Merci, jacques
"Michel Gaboly" wrote in message news:<#...Rebonjour,
La différence n'intervient que si le premier élément est sélectionné :
Entre ce code (Il faut un UserForm avec un ListBox nommé ListBox1
et un CommandButton nommé BOK
Private Sub UserForm_Initialize()
Dim i As Integer
For i = 1 To 10
ListBox1.AddItem i
Next i
End Sub
Private Sub BOK_Click()
Dim i As Integer
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox i
End If
Next i
End With
End Sub
Appuie ensuite sur F4 pour afficher le UserForm.
Clique sur le premier élément de la liste (le chiffres), et clique sur
le bouton. Un message s'affiche avec la valeur de 1 (0, zéro).
Modifie ensuite la ligne "For ..." ainsi :
For i = 1 To .ListCount - 1
Recommence le test (affichage du UserForm, sélection du premier
élément et clic sur le bouton).
Aucun message n'est affiché, car .Selected(i) n'est vrai que pour = 0,
qui n'est pas testé dans cette seconde version.
De la même façon, avec un ListBox pour lequel il n'y a pas de Multi-
selection, au lieu de Selected, on teste la propriété ListBox, dont la
valeur est "-1" quand aucun élément n'est sélectionné, et "n-1", quand
le enième élément est sélectionné (donc 0 pour le premier élément).
Voilà.
a écrit dans le message de
news:, Michel Denis, Michel GABOLY, le Forum
Je vous remercie tous les trois de vos réponses.
, j'essayerai ton astuce pour voir ce que cela donne, pour
information personnelle.
Michel Denis, j'ai essayer avec : If Me.Selected(i) = True
et cela me mets aussi Argument non valide.
Michel GABOLY, j'ai utilisé ton code,J'ai du ajouter la déclaration de
la variable, et j'ai essayé avec For i = 1 et for i = 0 je n'ai point
vu de différence, es-ce normale?
Dim i As Integer
With ListBox1
For i = 1 To .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
Encore merci, a vous trois cela faisait une plombe que je tourné et
retourné ce code en vain, Jacques
"Michel Gaboly" wrote in message
news:...Bonsoir,
Tu ne peux pas utiliser Selected sans qualificatif. VBA ne peut pas
deviner tout seul quel ListBox (ou CheckBox) est concerné.
Donc :
For i = 1 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then UserForm2.TextBox10 > > > > > UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13
Ou plus de lignes, mais peut-être plus lisible :
With ListBox1
For i = 1 to .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)End If
Next i
End With
If .Selected(i) suffit ; le "= True" ne sert à rien.
Par ailleurs pourquoi commences-tu à 1 comme valeur de i ?
Sauf si "Option Base 1" dans le module, en principe, il faudrait com-
mencer à 0 (zéro). Avec
For i = 1 to .ListCount - 1
Le nombre de passages dans la boucle n'est pas égal à ListCount
il manque un passage.
a écrit dans le message de
news:Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Michel, Le forum,
Merci de ton aide.
Pour la creation d'une fiche cela fonctionne super.
Mais comme cette liste peu évolluer, il y a donc un UserForm
"UserFormRésultat" avec une possibilité de modification qui utilise la
même pratique, donc je fais "Ajout d'un nouveau cableur", le UserForm
"Ajout" s'ouvre je fais la sélection de un ou plusieur cableur dans la
ListBox je fait "valider", le TextBox del'UserForm "Resultat" est bien
rempli, mais quand je revien dans celui-ci pour faire "modifier", ces
données s'effacent.
Qu'est-ce que j'ai pu oublier?
Merci, trés beaucoup,Jacques
jacques-zeziola@wanadoo.fr wrote in message news:<5ee3abf8.0311161047.7ba5c4c@posting.google.com>...
Michem Gaboly,Hervé, le forum
Merci, Hervé
Alors dans mon cas comment je sais lequel des deux je dois utilisé.
Merci, jacques
"Michel Gaboly" <michel@suppgaboly.com> wrote in message news:<#GTQkIErDHA.2772@TK2MSFTNGP12.phx.gbl>...
Rebonjour,
La différence n'intervient que si le premier élément est sélectionné :
Entre ce code (Il faut un UserForm avec un ListBox nommé ListBox1
et un CommandButton nommé BOK
Private Sub UserForm_Initialize()
Dim i As Integer
For i = 1 To 10
ListBox1.AddItem i
Next i
End Sub
Private Sub BOK_Click()
Dim i As Integer
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox i
End If
Next i
End With
End Sub
Appuie ensuite sur F4 pour afficher le UserForm.
Clique sur le premier élément de la liste (le chiffres), et clique sur
le bouton. Un message s'affiche avec la valeur de 1 (0, zéro).
Modifie ensuite la ligne "For ..." ainsi :
For i = 1 To .ListCount - 1
Recommence le test (affichage du UserForm, sélection du premier
élément et clic sur le bouton).
Aucun message n'est affiché, car .Selected(i) n'est vrai que pour = 0,
qui n'est pas testé dans cette seconde version.
De la même façon, avec un ListBox pour lequel il n'y a pas de Multi-
selection, au lieu de Selected, on teste la propriété ListBox, dont la
valeur est "-1" quand aucun élément n'est sélectionné, et "n-1", quand
le enième élément est sélectionné (donc 0 pour le premier élément).
Voilà.
<jacques-zeziola@wanadoo.fr> a écrit dans le message de
news:5ee3abf8.0311160144.2541ef63@posting.google.com...
J@c, Michel Denis, Michel GABOLY, le Forum
Je vous remercie tous les trois de vos réponses.
J@c, j'essayerai ton astuce pour voir ce que cela donne, pour
information personnelle.
Michel Denis, j'ai essayer avec : If Me.Selected(i) = True
et cela me mets aussi Argument non valide.
Michel GABOLY, j'ai utilisé ton code,J'ai du ajouter la déclaration de
la variable, et j'ai essayé avec For i = 1 et for i = 0 je n'ai point
vu de différence, es-ce normale?
Dim i As Integer
With ListBox1
For i = 1 To .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
Encore merci, a vous trois cela faisait une plombe que je tourné et
retourné ce code en vain, Jacques
"Michel Gaboly" <michel@suppgaboly.com> wrote in message
news:<Oya3fH9qDHA.2188@TK2MSFTNGP11.phx.gbl>...
Bonsoir,
Tu ne peux pas utiliser Selected sans qualificatif. VBA ne peut pas
deviner tout seul quel ListBox (ou CheckBox) est concerné.
Donc :
For i = 1 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then UserForm2.TextBox10 > > > > > UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13
Ou plus de lignes, mais peut-être plus lisible :
With ListBox1
For i = 1 to .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
If .Selected(i) suffit ; le "= True" ne sert à rien.
Par ailleurs pourquoi commences-tu à 1 comme valeur de i ?
Sauf si "Option Base 1" dans le module, en principe, il faudrait com-
mencer à 0 (zéro). Avec
For i = 1 to .ListCount - 1
Le nombre de passages dans la boucle n'est pas égal à ListCount
il manque un passage.
<jacques-zeziola@wanadoo.fr> a écrit dans le message de
news:5ee3abf8.0311151331.2d8649d8@posting.google.com...
Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques
Michel, Le forum,
Merci de ton aide.
Pour la creation d'une fiche cela fonctionne super.
Mais comme cette liste peu évolluer, il y a donc un UserForm
"UserFormRésultat" avec une possibilité de modification qui utilise la
même pratique, donc je fais "Ajout d'un nouveau cableur", le UserForm
"Ajout" s'ouvre je fais la sélection de un ou plusieur cableur dans la
ListBox je fait "valider", le TextBox del'UserForm "Resultat" est bien
rempli, mais quand je revien dans celui-ci pour faire "modifier", ces
données s'effacent.
Qu'est-ce que j'ai pu oublier?
Merci, trés beaucoup,Jacques
wrote in message news:...Michem Gaboly,Hervé, le forum
Merci, Hervé
Alors dans mon cas comment je sais lequel des deux je dois utilisé.
Merci, jacques
"Michel Gaboly" wrote in message news:<#...Rebonjour,
La différence n'intervient que si le premier élément est sélectionné :
Entre ce code (Il faut un UserForm avec un ListBox nommé ListBox1
et un CommandButton nommé BOK
Private Sub UserForm_Initialize()
Dim i As Integer
For i = 1 To 10
ListBox1.AddItem i
Next i
End Sub
Private Sub BOK_Click()
Dim i As Integer
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox i
End If
Next i
End With
End Sub
Appuie ensuite sur F4 pour afficher le UserForm.
Clique sur le premier élément de la liste (le chiffres), et clique sur
le bouton. Un message s'affiche avec la valeur de 1 (0, zéro).
Modifie ensuite la ligne "For ..." ainsi :
For i = 1 To .ListCount - 1
Recommence le test (affichage du UserForm, sélection du premier
élément et clic sur le bouton).
Aucun message n'est affiché, car .Selected(i) n'est vrai que pour = 0,
qui n'est pas testé dans cette seconde version.
De la même façon, avec un ListBox pour lequel il n'y a pas de Multi-
selection, au lieu de Selected, on teste la propriété ListBox, dont la
valeur est "-1" quand aucun élément n'est sélectionné, et "n-1", quand
le enième élément est sélectionné (donc 0 pour le premier élément).
Voilà.
a écrit dans le message de
news:, Michel Denis, Michel GABOLY, le Forum
Je vous remercie tous les trois de vos réponses.
, j'essayerai ton astuce pour voir ce que cela donne, pour
information personnelle.
Michel Denis, j'ai essayer avec : If Me.Selected(i) = True
et cela me mets aussi Argument non valide.
Michel GABOLY, j'ai utilisé ton code,J'ai du ajouter la déclaration de
la variable, et j'ai essayé avec For i = 1 et for i = 0 je n'ai point
vu de différence, es-ce normale?
Dim i As Integer
With ListBox1
For i = 1 To .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)
End If
Next i
End With
Encore merci, a vous trois cela faisait une plombe que je tourné et
retourné ce code en vain, Jacques
"Michel Gaboly" wrote in message
news:...Bonsoir,
Tu ne peux pas utiliser Selected sans qualificatif. VBA ne peut pas
deviner tout seul quel ListBox (ou CheckBox) est concerné.
Donc :
For i = 1 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then UserForm2.TextBox10 > > > > > UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13
Ou plus de lignes, mais peut-être plus lisible :
With ListBox1
For i = 1 to .ListCount - 1
If .Selected(i) Then
UserForm2.TextBox10 = UserForm2.TextBox10 & .List(i) &
Chr(13)End If
Next i
End With
If .Selected(i) suffit ; le "= True" ne sert à rien.
Par ailleurs pourquoi commences-tu à 1 comme valeur de i ?
Sauf si "Option Base 1" dans le module, en principe, il faudrait com-
mencer à 0 (zéro). Avec
For i = 1 to .ListCount - 1
Le nombre de passages dans la boucle n'est pas égal à ListCount
il manque un passage.
a écrit dans le message de
news:Salut le forum,
J'utilise un code, pour récupérer dans une ListBox (ListBox1) d'un
UserForm (USF_AjoutCableur) des données dans une feuille
(Tool_Intervenants!C6:C20.
Une fois ces données récupérées, je fais une sélection (Simple ou
Multiselect)dans la ListBox (ListBox1) qui aprés validation devraient
étre envoyé dans un TextBox (TextBox10 ) d'un autre UserForm
(UserForm2)
La récupération ce passe bien , mais une fois que je sélectionne les
données dans la ListBox en validant pour les envoyer dans un TextBox
d'un autre UserForm
cela le met un message d'erreur : Argument Non Valide et me souligne
en Jaune le code suivant : If Selected(i) = True Then .......
Voici ce code,
Option Explicit
Private Sub CommandButton1_Click()
Dim i As Integer
UserForm2.TextBox10 = "Les choix possibles sont:"
For i = 1 To ListBox1.ListCount - 1
If Selected(i) = True Then UserForm2.TextBox10 = UserForm2.TextBox10 &
ListBox1.List(i) & Chr(13)
Next i
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub UserForm_Initialize()
ListBox1.RowSource = "Feuil1!C6:C20"
End Sub
Si quelqu'un peu m'expliquer d'ou vien l'erreur, je l'en remercie
d'avance, Jacques