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 :

Optimisation d'un code rechercheV sur deux feulles d'un classeur, et sur deux colonnes


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Rédacteur technique
    Inscrit en
    Mars 2015
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Rédacteur technique

    Informations forums :
    Inscription : Mars 2015
    Messages : 13
    Points : 7
    Points
    7
    Par défaut Optimisation d'un code rechercheV sur deux feulles d'un classeur, et sur deux colonnes
    Bonjour à toutes et à tous.

    Débutant, j'ai réussi à bricoler un code permettant d'effectuer une rechercheV dans deux feuilles d'un même classeur, et sur deux colonnes, cependant je quasi plante mon PC pendant 5 mn
    Est-ce que quelqu'un aurait une idée pour optimiser ce code (j'e dois conserver ma mise en forme initiale. Ainsi chercher dans deux colonnes deux valeurs, correspondant aux deux valeurs de la feuille 2. Puis au final marquer d'une croix le résultat correspondant dans une autre colonne, et ce sur environ 30000lignes).

    Voici le 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
    Sub FormatTab()
    ActiveSheet.Select
     
    Dim i As Double
    Dim j As Integer
    Dim h As Integer
    Dim Derlig As Long
    Dim Derligx As Long
    Dim k As Variant
    Dim VALEURA As Variant, VALEURB As Variant
     
    Derlig = ActiveSheet.Range("A42008").End(xlUp).Row
     
    Derligx = Sheets(5).Range("A30008").End(xlUp).Row
     
    For i = 2 To Derlig
     
    VALEURA = ActiveSheet.Cells(i, "A")
    VALEURB = ActiveSheet.Cells(i, "B")
    k = 0
     
    For j = 2 To Derligx
     
    If Sheets(5).Cells(j, "A") = VALEURA And Sheets(5).Cells(j, "B") = VALEURB Then
    k = k + 1
    End If
     
    Next j
     
    If k >= 1 Then
    Cells(i, 35) = "x"
    End If
     
    Next i
     
    End Sub

  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,

    Consulter le tutoriel Les filtres avancés ou élaborés dans Excel


    __________________________________________________________________________________________________
    Je suis Charlie - Je suis Bardo
    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
    Futur Membre du Club
    Homme Profil pro
    Rédacteur technique
    Inscrit en
    Mars 2015
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Rédacteur technique

    Informations forums :
    Inscription : Mars 2015
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    J'ai regardé avec intéret les filtres élaborés, néanmoins je ne vois pas comment..

    Après quelques recherches c'est la fonction offset qui conviendrai mais la je ne vois toujours pas comment????

  4. #4
    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




    La propriété Offset n'effectuant pas de recherche (‼),

    dans l'attente d'une présentation claire & exhaustive de la problématique actuelle …
    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)

Discussions similaires

  1. [XL-2010] Optimisation exécution de code : suppression espace de fin sur plage de données
    Par Poussemousse dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 16/02/2015, 14h25
  2. [XL-2003] optimisation de code recherchev
    Par sims92.66 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 26/09/2012, 17h19
  3. Optimiser la balise CODE sur le forum ?
    Par CaviarNAS dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 1
    Dernier message: 08/01/2011, 10h16
  4. Réponses: 12
    Dernier message: 06/12/2008, 14h38

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