XL 2016 Comparaison de listes et affichage sous condition d'une autre colonne

Willystic

XLDnaute Nouveau
Bonjour,
1587668711479.png
1587668937932.png


Voici mon pb:
-Après le tri d'une liste (absent), et comparaison avec la base de données (identifiant,Matricule,........)je voudrais afficher un rapport des "présents sur une autre feuille
-Par contre j 'aimerais ajouter une condition d'affichage suite au tri : la personne doit être aux effectifs

Tout ce fait en VBA. La partie comparaison est opérationnelle, mais je n'arrive pas à y intégrer la condition (effectif) pour l'affichage du rapport.
Est possible?

Voici le bout de code:

'Comparaison avec le fichier existant

VB:
 'Comparaison avec le fichier existant
        Dim colonne1 As Range, colonne2 As Range, colonne3 As Range, cellule As Range, trouve As Range, suite As Range

        'Création des 2 listes
        Set colonne1 = Sheets("Mots de passe").Range(("B5"), Sheets("Mots de passe").Range("B5").End(xlDown)) 'liste originale
        Set colonne2 = Sheets("SUIVI").Range(("D9"), Sheets("SUIVI").Range("D9").End(xlDown)) 'liste elements trouvés
        Set colonne4 = Sheets("Mots de passe").Range(("M5"), Sheets("Mots de passe").Range("M5").End(xlDown)) 'liste originale des effectifs
        'Efface la plage de réception
        Sheets("Rapport").Range("A3:B65536").ClearContents
        
        'création rapport
        Sheets("Rapport").Range("D2").Value = rechercheannee
        Sheets("Rapport").Range("F2").Value = recherchemois
        Sheets("Rapport").Range("B1").Value = Date
        Sheets("Rapport").Range("C1").Value = Time
        
        'Compare la colonne A des feuilles 1 et 2 puis ecrit dans la feuille rapport
        
         For Each cellule In colonne1
            Set suite = Sheets("Rapport").[B65536].End(xlUp).Offset(1, 0)
            Set trouve = colonne2.Find(cellule.Value, LookIn:=xlValues, lookat:=xlWhole)
            If trouve Is Nothing Then suite.Value = cellule.Value [COLOR=rgb(41, 105, 176)]'And ??????? "x"**************************************************[/COLOR]
         Next
        
        MsgBox "Recherche par date effectuée ", vbOKOnly
    End If
    
     '********************************************


Merci de votre aide.
 

Willystic

XLDnaute Nouveau
Bonjour,
Regarde la pièce jointe 1063957 Regarde la pièce jointe 1063959

Voici mon pb:
-Après le tri d'une liste (absent), et comparaison avec la base de données (identifiant,Matricule,........)je voudrais afficher un rapport des "présents sur une autre feuille
-Par contre j 'aimerais ajouter une condition d'affichage suite au tri : la personne doit être aux effectifs

Tout ce fait en VBA. La partie comparaison est opérationnelle, mais je n'arrive pas à y intégrer la condition (effectif) pour l'affichage du rapport.
Est possible?

Voici le bout de code:

'Comparaison avec le fichier existant

VB:
 'Comparaison avec le fichier existant
        Dim colonne1 As Range, colonne2 As Range, colonne3 As Range, cellule As Range, trouve As Range, suite As Range

        'Création des 2 listes
        Set colonne1 = Sheets("Mots de passe").Range(("B5"), Sheets("Mots de passe").Range("B5").End(xlDown)) 'liste originale
        Set colonne2 = Sheets("SUIVI").Range(("D9"), Sheets("SUIVI").Range("D9").End(xlDown)) 'liste elements trouvés
        Set colonne4 = Sheets("Mots de passe").Range(("M5"), Sheets("Mots de passe").Range("M5").End(xlDown)) 'liste originale des effectifs
        'Efface la plage de réception
        Sheets("Rapport").Range("A3:B65536").ClearContents
      
        'création rapport
        Sheets("Rapport").Range("D2").Value = rechercheannee
        Sheets("Rapport").Range("F2").Value = recherchemois
        Sheets("Rapport").Range("B1").Value = Date
        Sheets("Rapport").Range("C1").Value = Time
      
        'Compare la colonne A des feuilles 1 et 2 puis ecrit dans la feuille rapport
      
         For Each cellule In colonne1
            Set suite = Sheets("Rapport").[B65536].End(xlUp).Offset(1, 0)
            Set trouve = colonne2.Find(cellule.Value, LookIn:=xlValues, lookat:=xlWhole)
            If trouve Is Nothing Then suite.Value = cellule.Value [COLOR=rgb(41, 105, 176)]'And ??????? "x"**************************************************[/COLOR]
         Next
      
        MsgBox "Recherche par date effectuée ", vbOKOnly
    End If
  
     '********************************************


Merci de votre aide.
Bonjour,

Vous avez excel 2016, faites le avec Power Query, atteignable dans l'onglet données/Nouvelle requête/A partir d'un tableau ou d'une table.

Cordialement
Bonjour,

Je suis passer par une autre méthode.

Pour Power Query , je commence seulement avec Power BI

Merci tout de même.
 

Discussions similaires

Réponses
2
Affichages
552

Statistiques des forums

Discussions
312 215
Messages
2 086 316
Membres
103 176
dernier inscrit
jean.yvesjean.yves