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 :

Doublon? et bien non le contraire est recherché. [XL-2003]


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Août 2011
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Août 2011
    Messages : 39
    Par défaut Doublon? et bien non le contraire est recherché.
    Mesdames, Messieurs, Bonjour!
    Je vais commencer par expliquer la chose... J'ai deux listings datés dans un classeur Excel (2003) de X et Y lignes chacun (X peut être <, > ou = à Y (minimum de lignes garanties: 1200)). ces deux listings ont une clef de référence (la colonne A). Je souhaite tester la présence des données entre le listing récent et l'ancien, à la fin de la procédure l'ancien listing sera supprimé et le nouveau prendra le nom de l'ancien (logique me direz-vous ).
    La référence unique est le nom d'un fichier. Si et seulement si, la référence unique n'est pas présente dans le nouveau listing alors le fichier sera déplacé.
    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
    NombreDE = List.Range("A65536").End(xlUp).Row
    NombreDEIOP = NouvIOP.Range("A65536").End(xlUp).Row
    NombreEssai = 0
    For Recurrence = 2 To NombreDE
            For Tentative = 2 To NombreDEIOP
                  If List.Range("A" & Recurrence).Value = NouvIOP.Range("A" & Tentative).Value Then
                      Exit For
                  Else
                      NombreEssai = NombreEssai + 1
                  End If
            Next Tentative
    '        MsgBox NombreEssai
            If NombreEssai = NombreDEIOP Then
                MsgBox "ancien pas dans nouveau" & vbCrLf & AdressefichierValide
    '            code de déplacement de fichiers (en cours de rédaction)
            End If
            NombreEssai = 0
    Next Recurrence
    Pour tester ma programmation, j'ai mis 10 "anciennes" références. Pour une raison qui m'est inconnue le message "ancien pas dans nouveau" ne sort pas .
    donc si quelqu'un voit une faute merci de me l'indiquer, je tourne depuis une semaine...

    Edit: je vais tenter avec des "while", jsute au cas où.

  2. #2
    Membre Expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Par défaut
    Bonjour,

    Plutôt que passer par 2 boucles pour effectuer ta recherche de clé, tu peux utiliser la méthode Find.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
        NombreDE = List.Range("A65536").End(xlUp).Row
        Set PlageDE = List.Range("A2:A" & NombreDE)
        NombreDEIOP = NouvIOP.Range("A65536").End(xlUp).Row
        Set PlageDEIOP = NouvIOP.Range("A2:A" & NombreDEIOP)
        For Each Cel In PlageDE
            Set c = PlageDEIOP.Find(Cel, LookIn:=xlValues, lookat:=xlWhole)
            If c Is Nothing Then
                MsgBox Cel & " n'est pas dans nouveau"
            End If
        Next Cel
    Cordialement.

  3. #3
    Membre averti
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Août 2011
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Août 2011
    Messages : 39
    Par défaut
    Bonjour et Merci gFZT82...
    Je clos ce sujet...

    Une semaine de plantages - tentatives résolue en 5 minutes... Va falloir que je prennes encore des cours.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 03/07/2008, 00h15
  2. Attribut alt d'une image dans css possible? et bien non...
    Par philippe123 dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 11/04/2008, 15h03
  3. fiche non MDI, qu'est-ce que c'est?
    Par alpha25 dans le forum Delphi
    Réponses: 5
    Dernier message: 29/08/2006, 11h08
  4. Connecter mysql à access en ODBC (et non le contraire)
    Par guidav dans le forum SQL Procédural
    Réponses: 5
    Dernier message: 28/03/2006, 15h51

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