Trier des données sous conditions

  • Initiateur de la discussion Initiateur de la discussion sellig 29
  • 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 !

sellig 29

XLDnaute Occasionnel
Bonjour à tous,

Je souhaiterais pouvoir trier des données issues d'un tableau en fonction de 2 critères.
J'ai mis des explications plus précises dans le fichier joint! Je pense que cela ne peut se faire (si c'est possible) uniquement par VBA, pour ma part, il me manque juste la compétence...
Si quelqu'un pouvait m'aider?
Merci d'avance
 

Pièces jointes

Re : Trier des données sous conditions

Effectivement, vous avez obtenu quasiment ce que je souhaitais. J'ai remarqué toutefois que le double clic dans la cellule Brest "coller données" ne fait pas disparaitre les lignes? De plus, le report des données correspondance TRAIN N°... dans le tableau final ne se fait pas correctement.
Ceci dit, le résultat obtenu est cependant satisfaisant même si cela ne se réalise pas à la perfection! je vous remercie pour votre disponibilité et bravo pour votre compétence🙂
 
Re : Trier des données sous conditions

Bonjour à tous,

J'ai réussi à résoudre les 2 petits problèmes que j'évoquais dans mon post précédent (un 3 au lieu d'un 4 dans le code VBA et problème de $ dans une mise en forme conditionnelle.
J'aimerai améliorer ce fichier en y apportant une modification. Je sais qu'avec VBA on peut faire des miracles... Je souhaiterai pouvoir créé directement le tableau final dès le 1er double clic de "coller données". J'aimerai que l'onglet prenne le nom du nom de la ville double cliqué colonne A, suivi du mot "pair". Si un onglet pouvait se créé de la même manière pour chaqque double clic selon la ville sélectionnée?
Si cela est possible, merci d'avance pour aide précieuse
 
Re : Trier des données sous conditions

Re...
Un essai sur la base du code du message #13. Je ne tiens évidemment pas compte des modifications que vous avez faites depuis : il conviendra d'adapter en conséquence.
Code:
[COLOR="DarkSlateGray"][B]Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim i&, j&, tf As Boolean
   Application.ScreenUpdating = False
   If Target.Column = 1 Then
      Cancel = True
      Cells.EntireRow.Hidden = False
      Cells.EntireColumn.Hidden = False
   End If
   If Target.Row > 4 And Target.Column = 1 And Not IsEmpty(Target) Then

      On Error GoTo E
      Application.Worksheets.Add After:=Me
      ActiveSheet.Name = Target.Value & "_pair"
R:    On Error GoTo 0

      With Me.Range(Me.Range("B5"), Target.SpecialCells(xlLastCell))
         For j = 1 To .Columns.Count
            If IsEmpty(Me.Cells(Target.Row, .Columns(j).Column)) Or Me.Cells(Target.Row, .Columns(j).Column).Value = "" Or Me.Cells(Target.Row, .Columns(j).Column).Value = 0 Then Me.Columns(.Columns(j).Column).EntireColumn.Hidden = True
         Next j
         For i = 1 To .Rows.Count
            tf = True
            For j = 1 To .Columns.Count
               If Me.Columns(.Columns(j).Column).EntireColumn.Hidden = False Then tf = tf And (IsEmpty(.Cells(i, j)) Or .Cells(i, j) = "" Or .Cells(i, j) = 0)
            Next j
            If tf Then .Rows(i).EntireRow.Hidden = True
         Next i
      End With

      With Sheets(Target.Value & "_pair")
         .Cells.ClearContents
         Me.Range(Me.Range("A1"), Target.SpecialCells(xlLastCell)).SpecialCells(xlCellTypeVisible).Copy Destination:=.Range("A1")
         .Range("A1").Value = .Name
         .Activate [COLOR="SeaGreen"]'Facultatif[/COLOR]
      End With
      Me.Cells.EntireRow.Hidden = False [COLOR="SeaGreen"]'Facultatif[/COLOR]
      Me.Cells.EntireColumn.Hidden = False [COLOR="SeaGreen"]'Facultatif[/COLOR]

   End If
   Application.ScreenUpdating = True

Exit Sub
E: Application.DisplayAlerts = False
   ActiveSheet.Delete
   Application.DisplayAlerts = True
Resume R

End Sub[/B][/COLOR]
ROGER2327
#3211
 

Pièces jointes

Re : Trier des données sous conditions

Merci ROGER2327, ça n'est pas tout à fait cela que je souhaitais, aussi, toutes les adaptations qui seront nécessaires vont au dela de ma compétence, je conserverai la version précédente qui est déjà très bien🙂, je ne souhaite pas abuser de votre patience et de votre compétence! Je pense que le but de ce forum n'est pas de tout faire faire...
 
Re : Trier des données sous conditions

Bonjour à tous,

Je reviens sur une demande que Roger2327 avait admirablement bien traitée 😉 J'aimerai y apporter une petite adaptation que je n'arrive pas à résoudre? 😱
Je souhaiterais (sans supprimer les fonctions déjà existantes dans la macro)que la valeur "double cliquée" en colonne 1 se reporte en IU1 de la feuille créée.
Exemple: dans le fichier de Roger2327, lorsque je clique en A9 sur Nice, la feuille Nice_pair se créé, la mention Nice_pair se reporte en A1 de la feuille créée, j'aimerai, en plus, que la mention Nice se reporte en IU1.
Merci d'avance pour votre aide.
 
- 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

Discussions similaires

Réponses
5
Affichages
906
Retour