Données listbox vers feuil1
Corgol
Messages postés
2
Statut
Membre
-
Ivan-hoe Messages postés 433 Date d'inscription Statut Membre Dernière intervention -
Ivan-hoe Messages postés 433 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Bonjour,
Etant debutant dans vb excel , j'aurai besoin de vos connaissances pour me depanner un peu sur les deux points suivants:
1. Dans ma listbox j'ai mis les donnees d'une feuille de fichier excel, feuil2, cellule B1:B200. J'aimerai faire apparaitre ces donnees dans la feuil1 dans la cellule A27 àA79 et de la cellule A113 a A157 , je voudrais que ces données se mettent les unes en dessous des autres après sélection dans ma listbox par la commande CommandButton1_Click()
Pour l’instant ça me recopie toutes les données de la liste boxe dans la feuil1, il m’est impossible de sélectionner les lignes que je veux
Voici le code
Private Sub CommandButton1_Click()
If UserForm1.Visible = True Then
End If
Dim element_select As Boolean
Dim nb_elements, i As Integer
element_select = False
nb_elements = UserForm1.ListBox1.ListCount
'Vérifie si un élément est sélectionné
'le 1er item (élément) est indexé à zéro, raison pour laquelle la boucle for démarre à zéro
For i = 0 To nb_elements - 1
If UserForm1.ListBox1.Selected(i) = True Then
element_select = True
Exit For
End If
Next
'sélectionne la cellule devant recevoir la 1ère valeur
Range("A27").Select
'Ecriture des valeurs sélectionnés dans la feuille Excel
For i = 0 To nb_elements - 1
'affecte à la cellule active la valeur sélectionnée de la colonne un de la ListeBox
'l'index des colonnes commançant à zéro, on utilise la valeur 0
ActiveCell.Value = ListBox1.List(i, 0)
'se déplace d'une cellule vers le bas
ActiveCell.Offset(1, 0).Select
Next i
End Sub
Merci
Bonjour,
Etant debutant dans vb excel , j'aurai besoin de vos connaissances pour me depanner un peu sur les deux points suivants:
1. Dans ma listbox j'ai mis les donnees d'une feuille de fichier excel, feuil2, cellule B1:B200. J'aimerai faire apparaitre ces donnees dans la feuil1 dans la cellule A27 àA79 et de la cellule A113 a A157 , je voudrais que ces données se mettent les unes en dessous des autres après sélection dans ma listbox par la commande CommandButton1_Click()
Pour l’instant ça me recopie toutes les données de la liste boxe dans la feuil1, il m’est impossible de sélectionner les lignes que je veux
Voici le code
Private Sub CommandButton1_Click()
If UserForm1.Visible = True Then
End If
Dim element_select As Boolean
Dim nb_elements, i As Integer
element_select = False
nb_elements = UserForm1.ListBox1.ListCount
'Vérifie si un élément est sélectionné
'le 1er item (élément) est indexé à zéro, raison pour laquelle la boucle for démarre à zéro
For i = 0 To nb_elements - 1
If UserForm1.ListBox1.Selected(i) = True Then
element_select = True
Exit For
End If
Next
'sélectionne la cellule devant recevoir la 1ère valeur
Range("A27").Select
'Ecriture des valeurs sélectionnés dans la feuille Excel
For i = 0 To nb_elements - 1
'affecte à la cellule active la valeur sélectionnée de la colonne un de la ListeBox
'l'index des colonnes commançant à zéro, on utilise la valeur 0
ActiveCell.Value = ListBox1.List(i, 0)
'se déplace d'une cellule vers le bas
ActiveCell.Offset(1, 0).Select
Next i
End Sub
Merci
A voir également:
- Données listbox vers feuil1
- Fuite données maif - Guide
- Trier des données excel - Guide
- Supprimer les données de navigation - Guide
- Windows 7 vers windows 10 - Accueil - Mise à jour
- Qwerty vers azerty - Guide
3 réponses
A quel niveau se trouve l'erreur ? (c'est la ligne qui est surlignée en jaune quand tu cliques sur Déboguer)
Bonjour Corgol,
tu peux tout à fait faire dans une seule et même boucle la vérification qu'au moins un élément est sélectionné ET écrire les éléments sélectionnés à la suite de ta liste.
Ci-dessous une suggestion à partir du code que tu fournis.
I.
tu peux tout à fait faire dans une seule et même boucle la vérification qu'au moins un élément est sélectionné ET écrire les éléments sélectionnés à la suite de ta liste.
Ci-dessous une suggestion à partir du code que tu fournis.
I.
Private Sub CommandButton1_Click()
Dim element_select As Boolean
Dim nb_elements As Integer, i As Integer
element_select = False
nb_elements = UserForm1.ListBox1.ListCount
'Vérifie si un élément est sélectionné ; si oui, cet élément est écrit _
à la fin de la liste sur la feuille
For i = 0 To nb_elements - 1
If ListBox1.Selected(i) = True Then
element_select = True
Range("A27").End(xlDown).Offset(1, 0).Value = ListBox1.List(i)
End If
Next i
'Message d'alerte si aucun élément sélectionné ; auquel cas _
la procédure est arrêtée pour permettre de faire une sélection
If element_select = False Then
MsgBox "aucune sélection"
Exit Sub
End If
'Sinon, le formulaire est déchargé et fermé
Unload Me
End Sub