Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Tri dans un userform

  • Initiateur de la discussion Initiateur de la discussion zozotitou
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Z

zozotitou

Guest
Bonjour le forum

Je débute dans les macros et le VBA, je voudrais par macro dans des combos le tri de colonne dans le fichier par catégorie
-1- Par sport (ne pas avoir de doublon dans le combo)
-2- une fois sélectionner le sport avoir la catégorie (ne pas avoir de doublon dans le combo)
Ainsi de suite
A la fin pouvoir écrire la sélection dans une autre feuille

Merci de votre aide
Cdlt
 
Dernière modification par un modérateur:
Re : Tri dans un userform

bonjour Zozotitou
il n'y que du foot dans feuil2
tu veux y mettre aussi le rugby et le handball
je ferais une feuille pour chaque
ou donne plus d'explication
à bientôt
 
Re : Tri dans un userform

Bonjour le Forum et Bebere
J'ai essayé mais il copie les infos vers la ligne 2 mais les positionnent ou il se trouve dans la feuille 1.
Et je voudrais tout ecrire dans la même feuille et les uns à la suite.


Merci de voir
A bientôt
 
Dernière modification par un modérateur:
Re : Tri dans un userform

Re
merci beaucoup, mais maintenant le pb ,c'est qui ne prend pas en compte le dernier enregistrement d'un catégorie voir le fichier ci-joint.
 
Dernière modification par un modérateur:
Re : Tri dans un userform

Zozotitou

Private Sub CommandButton5_Click()
Dim date1 As Date
Dim commentaire1 As String
Dim commentaire2 As String

'dans la ligne suivante tu supprimes le -1 en commentaire
For I = 1 To ListView1.ListItems.Count ' - 1
If ListView1.ListItems(I).Checked = True Then
ligne2 = Mid(ListView1.ListItems(I).Key, 2, 50)
Exit For
End If
Next I

If ligne2 = 0 Then
MsgBox ("Vous devez sélectionner une ligne")
Exit Sub
End If

à bientôt
 
Re : Tri dans un userform

Encore merci Bebere
Je voudrais maintenant interdire la séléction d'une seconde ligne pour recopie car je dois traiter qu'un ligne à la fois.


Cdlt

A+
 
Re : Tri dans un userform

Bonjour le forum et Bebere
Je voudrais maintenant interdire la séléction d'une seconde ligne pour recopie car je dois traiter qu'un ligne à la fois.


Cdlt

A+
 
Re : Tri dans un userform

Bonsoir le forum
Bonsoir zozotitou

Il faut modifier le début de la macro CommandButton5_Click.
On compte le nombre de ligne cochée

Code:
'---------------------------------------------------------------------------------------
' Procedure : CommandButton5_Click
' DateTime  : 19/06/2007 16:42
' Author    : jp14
' Pour      : http://www.excel-downloads
' Utilisation   :recopie une seule ligne
'---------------------------------------------------------------------------------------
'
Private Sub CommandButton5_Click()

'Sheets(nomf2).Select
'    Cells.Select
'    Selection.ClearContents
'    ligne1 = 0
'Sheets(nomf1).Select
Dim compteur As Integer
compteur = 0
For i = 1 To ListView1.ListItems.Count
    If ListView1.ListItems(i).Checked = True Then
        'ligne2 = Mid(ListView1.ListItems(i).Key, 2, 50)
        compteur = compteur + 1
        
    End If
Next i

If compteur = 0 Then
    MsgBox ("Vous devez sélectionner une ligne")
    Exit Sub
End If
If compteur > 1 Then
    MsgBox ("Vous devez sélectionner une ligne et une seule")
    Exit Sub
End If
.................................................

JP
 
Dernière édition:
Re : Tri dans un userform

Bonjour le Forum et JP

Je voudrais extraire de la feuil2 vers la feuil3 par rapport au USERFORM4 une liste à une date definit dans le USERFORM4.

Dans le Combo du userform je voudrais trier la date de la plus recente à la plus ancienne

Pour JP J'ai modifier le code, mais je peux toujours cocher plusieurs cases

Merci de votre aide

Cdlt
A+
 
Dernière modification par un modérateur:
Re : Tri dans un userform

Bonjour

Une première réponse.

Macro à modifier
Code:
'---------------------------------------------------------------------------------------
' Procedure : ListView1_ItemCheck
' DateTime  : 27/02/2007 17:52
' Utilisation   :changer la couleur quand une case est cochée
' une seule case doit être cochée
'---------------------------------------------------------------------------------------
Private Sub ListView1_ItemCheck(ByVal Item As MSComctlLib.ListItem)
Dim compteur As Integer
compteur = 0
For I = 1 To ListView1.ListItems.Count
    If ListView1.ListItems(I).Checked = True Then
        'ligne2 = Mid(ListView1.ListItems(i).Key, 2, 50)
        compteur = compteur + 1
        
    End If
Next I
If compteur > 1 Then
    MsgBox ("Vous devez décocher une ligne avant d'en cocher une nouvelle")
    Item.Checked = False
    Exit Sub
End If
...................................................

JP

PS
On peut modifier la macro en faisant le test directement dans la boucle for next (gain de temps) après l'incrémentation du compteur
 
Dernière édition:
Re : Tri dans un userform

Bonsoir

Ci joint le fichier avec une proposition.
Une listview remplace un combobox, cela permet de trier facilement les dates.

Pour les trier une colonne cachée contient les dates sous la forme aaaammjj.



JP
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
XL 2016 liste
Réponses
10
Affichages
386
Réponses
5
Affichages
308
Réponses
22
Affichages
1 K
  • Question Question
Microsoft 365 Fonction si
Réponses
7
Affichages
221
Réponses
14
Affichages
331
Réponses
5
Affichages
259
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…