contenu 1ere colonne listbox vers plage définie

jtitin

XLDnaute Occasionnel
Bonjour

je cherche à renvoyer dans une feuille le contenu 1ere colonne d'une listbox multicolonne en fonction d'une plage définie.
- exemple si je choisi la plage 18:00 le résultat s'incrémente sous 18:00

je vous joint un fichier avec plus d'explications

en vous remerciant par avance pour l'aide que vous pourriez m'apporter
 

Pièces jointes

  • test.xlsm
    75.4 KB · Affichages: 27
  • test.xlsm
    75.4 KB · Affichages: 30
  • test.xlsm
    75.4 KB · Affichages: 33

jtitin

XLDnaute Occasionnel
Re : contenu 1ere colonne listbox vers plage définie

Bonjour
je ne trouve pas de solution qui marche
j'essai ceci en visant une plage de cellules, la 1ére cellule vide. mais sa ne marche pas

Private Sub CommandButton8_Click()
' je sélectionne 1ere cellule vide de la plage "plage1800"
Range("plage1800").Cells.SpecialCells(xlCellTypeBlanks).Range("A1").Select

'puis j'essaie d'incrémenter le contenu de la listbox2 à ce niveau
With Me.ListBox2
Worksheets("tableau").ActiveCell.Resize(.ListCount) = .List
End With

End Sub

Alors, la commande:
Range("plage1800").Cells.SpecialCells(xlCellTypeBlanks).Range("A1").Select
me sélectionne bien la cellule voulue

et la commande:
With Me.ListBox2
Worksheets("tableau").Range("M5").Resize(.ListCount) = .List
End With

écrit bien le contenu de la listbox2 mais dans un endroit forcé ( à partir ici de Range("M5").)
je ne parvient pas à combiner les 2

merci pour votre aide
 

Paf

XLDnaute Barbatruc
Re : contenu 1ere colonne listbox vers plage définie

Bonjour

Code:
Private Sub CommandButton8_Click()
With Me.ListBox2
If .ListCount = 0 Then
    Exit Sub
Else

    If .ListCount > Range("plage1800").Cells.SpecialCells(xlCellTypeBlanks).Count Then
        MsgBox "Trop d'articles vous n'avez que " & Range("plage1800").Cells.SpecialCells(xlCellTypeBlanks).Count & " emplacements"
        .Clear
        Exit Sub
    Else
        Range("plage1800").Cells.SpecialCells(xlCellTypeBlanks).Cells(1, 1).Resize(.ListCount) = .List
    End If
 
End If
End With
End Sub

à noter que les plages nommées, en l'occurrence plage1800 n'existent pas dans le classeur. Il faut les créer

A+
 

jtitin

XLDnaute Occasionnel
Re : contenu 1ere colonne listbox vers plage définie

Merci Paf pour ta réponse

mais est il possible par le retour de la textbox13 qui m'affiche l'heure sélectionner du bouton de lancement
de rechercher la même valeur sur la feuille "tableau" plutôt que de faire des conditions sur des plages nommées.

ex: ma textbox13 affiche 18:30 -> je cherche 18h30 dans "tableau!" et j'incrémente en dessous si la place est disponible


merci encore
 

Pièces jointes

  • test.xlsm
    77.2 KB · Affichages: 22
  • test.xlsm
    77.2 KB · Affichages: 26
  • test.xlsm
    77.2 KB · Affichages: 27

Paf

XLDnaute Barbatruc
Re : contenu 1ere colonne listbox vers plage définie

Re

rechercher la même valeur sur la feuille "tableau" plutôt que de faire des conditions sur des plages
c'est vous qui voyez.

Le plus simple, peut-être, aurait été que chaque bouton sur la feuille appelle l'USF avec le nom de la plage nommée qui le concerne :
Code:
Private Sub CommandButton3_Click()
  UserForm1.TextBox13 = "Pl_1800"
  UserForm1.Show
End Sub
Private Sub CommandButton4_Click()
   UserForm1.TextBox13 = "Pl_1815"
   UserForm1.Show
End Sub
.....
....

et au niveau de l'USF dans Private Sub CommandButton8_Click() juste apporter modification à deux lignes:

If .ListCount > Range(TextBox13).Cells.SpecialCells(xlCellTypeBlanks).Count Then

et

Range(TextBox13).Cells.SpecialCells(xlCellTypeBlanks).Cells(1, 1).Resize(.ListCount) = .List

A+
 

jtitin

XLDnaute Occasionnel
Re : contenu 1ere colonne listbox vers plage définie

merci encore pour ces renseignements

je vais tester le fonctionnement

encore une dernière dernière question pour améliorer la chose (après je n'insiste plus, merci)
est il possible en gardant ce code de vérifié s'il y a un "X" en 3eme colonne listbox4
et de transférer uniquement les lignes qui ont un "X"

if ListBox4.List(ListBox1.ListIndex, 2) = "X" then


merci
 

Paf

XLDnaute Barbatruc
Re : contenu 1ere colonne listbox vers plage définie

Re

Pas trouvé de Listbox4 dans l'USF !

Il paraitrait plus logique,plutôt que de sélectionner des articles qui ne devront pas être transférer, de ne pouvoir sélectionner que les articles transférable ?

Bonne suite
 

jtitin

XLDnaute Occasionnel
Re : contenu 1ere colonne listbox vers plage définie

milles excuses
c'est la listbox2 dans la quel je cherche les "X"
ma listebox1 change par l'intermédiaire des 2 boutons "fruits" et légumes"
la liste par le bouton "fruits" donne un "X" dans la listbox2 (3eme colonne)
et pas celle du bouton "légumes"

et je souhaite récupérer dans la feuille "tableau" que les lignes avec un "X"

merci encore
 

jtitin

XLDnaute Occasionnel
Re : contenu 1ere colonne listbox vers plage définie

Bonjour à tous

je relance ce post car je ne trouve pas de solution en fouillant profondément dans le forum.

- par le bouton validation je cherche à renvoyer la liste dans la listbox2 multicolonne dans une plage nommée da la feuille "tableau"
mais uniquement la liste des lignes qui ont un "X" dans la 3ème colonne de la listbox2.

je vous joint un fichier amélioré avec l'aide de "Paf" avec les explications.

en vous remerciant par avance pour votre aide
 

Pièces jointes

  • test.xlsm
    165.7 KB · Affichages: 14
  • test.xlsm
    165.7 KB · Affichages: 22
  • test.xlsm
    165.7 KB · Affichages: 21

Discussions similaires

Réponses
6
Affichages
342
Réponses
2
Affichages
222

Statistiques des forums

Discussions
311 725
Messages
2 081 940
Membres
101 845
dernier inscrit
annesof