IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Transférer le résultat des doublons sur une autre feuille


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Réseau
    Inscrit en
    Février 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Réseau

    Informations forums :
    Inscription : Février 2017
    Messages : 6
    Points : 4
    Points
    4
    Par défaut Transférer le résultat des doublons sur une autre feuille
    Bonjour à tous,

    j'ai un fichier excel qui contient 5 colonnes de A à E et presque 60300 lignes

    je travaille avec un code VBA son rôle est de trouver les doublon et supprimer en même temps les doublons < 3 et qui affiche les résultats final sur la Feuil"LISTE SANS LES DOUBLONS < 3" avec le nombre de chaque doublons,(Résultat détailler!).

    le problème c'est que je veux pas les résultats bien détailler Je voudrais savoir combien d'alarme se répété sur chaque équipement de la colonne A.

    En PJ un exemple simple pour illustrer ce que je souhaiterais faire.

    je serai content si vous pouvez m'aider pour trouver les résultats comme expliquer en PJ la Feuil2 !

    merci d'avance

    PS: voici ci-dessous mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    Option Explicit
     
    Dim derln&, tablo, dico As Object, i&, j&, tabloR(), k&
    Dim f As Worksheet
     
    Sub Doublons()
     
        Set f = ActiveSheet
        derln = Range("A" & Rows.Count).End(xlUp).Row
        Range("E2:E" & derln).ClearContents
        tablo = Range("A2:E" & derln)
        Set dico = CreateObject("Scripting.Dictionary")
     
        For i = 1 To UBound(tablo, 1)
            dico(tablo(i, 1) & tablo(i, 3)) = dico(tablo(i, 1) & tablo(i, 3)) + 1
        Next i
     
        k = 0
        For i = 1 To UBound(tablo, 1)
              tablo(i, 5) = dico(tablo(i, 1) & tablo(i, 3))
            If tablo(i, 5) >= 3 Then
                ReDim Preserve tabloR(5, k + 1)
                For j = 1 To 5
                    tabloR(j - 1, k) = tablo(i, j)
                Next j
                k = k + 1
            End If
        Next i
     
        Range("G1").CurrentRegion.Offset(1, 0).ClearContents
        Range("A2").Resize(UBound(tablo, 1), 5) = tablo
        Range("G2").Resize(dico.Count, 1) = Application.Transpose(dico.keys)
        Range("H2").Resize(dico.Count, 1) = Application.Transpose(dico.items)
     
        Sheets.Add
        Range("A2").Resize(UBound(tabloR, 2), 5) = Application.Transpose(tabloR)
        f.Range("A1:E1").Copy Range("A1")
        f.Range("A:E").Copy
        Range("A:E").PasteSpecial xlPasteFormats
        Rows("1:1").Insert
     
        Range("B1") = "LISTE SANS LES DOUBLONS < 3"
        Rows("1:1").RowHeight = 42
        Range("B1").VerticalAlignment = xlCenter
        Range("B1").Select
    End Sub
    Fichiers attachés Fichiers attachés

  2. #2
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut
    Bonjour !

    conformément aux règles de ce forum !


    Sinon cela peut être réalisé déjà sans code via un filtre avancé …
    Et même s'il y a besoin d'un code, le filtre avancé s'impose !

    Les filtres avancés ou élaborés dans Excel

    _________________________________________________________________________________________________________
    Je suis Paris, Istanbul, Berlin, Nice, Bruxelles, Charlie, …
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  3. #3
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 914
    Points : 5 121
    Points
    5 121
    Par défaut
    Bonsoir
    sans ouvrir la fiche jointe pourquoi pas penser à countif
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    c = WorksheetFunction.CountIf(Sheets("AFFAIRE").Range("C:C"), Valrech)
    et si c inférieure à 3 tu fais ce que tu veux
    --------------------------------------------------------------*****----------------------------------------------------------------------------
    Bonne Continuation & Plein Succès
    Notre seul pouvoir véritable consiste à aider autrui avec modestie
    ______________________________________________________
    Pour dire merci, cliquer sur et quand la discussion est résolue, penser à cliquer sur le bouton

  4. #4
    Candidat au Club
    Homme Profil pro
    Réseau
    Inscrit en
    Février 2017
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Réseau

    Informations forums :
    Inscription : Février 2017
    Messages : 6
    Points : 4
    Points
    4
    Par défaut
    Re-bonjour,

    je vous remercie pour votre réponse rapide.

    serait-il possible de vous modifier mon code pour avoir les résultats attendus.

    j'ai oublié de vous dire que je suis débutant, malheureusement je n'arrive pas à utilisé "Countif" sur mon code et la même chose pour le filtre avancé!

    Merci d'avance

Discussions similaires

  1. [Toutes versions] Vba: Copier des lignes sur une autre feuille
    Par yassxavi dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 10/02/2015, 11h48
  2. [XL-2003] Transcription des données sur une autre feuille
    Par yfchauer dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 28/05/2014, 09h47
  3. trier et copier des données sur une autre feuille excel
    Par mirage37 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 09/07/2012, 17h08
  4. acces a des informations sur une autre feuille
    Par moulery dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 26/06/2012, 18h01
  5. Excel-copier des lignes sur une autre feuille
    Par petecul dans le forum Excel
    Réponses: 7
    Dernier message: 13/09/2007, 02h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo