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 :

Comparer une cellule a un ensemble de cellules


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2015
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2015
    Messages : 24
    Par défaut Comparer une cellule a un ensemble de cellules
    Bonjour a tous

    Je dois comparer une cellule a un ensemble de cellule .

    Je dois comparer chaque cellule de la colonne D de D2 A D1293 a l'ensemble de cellule de la colonne A allant de A2 a A1263.

    J'aimerais qu'il clear la cellule de la colonne D seulement si la cellule de la colonne D n'est egal a aucune autre cellule de la colonne A.

    Mon code ne fait pas ce que je veux comme expliquer ci-dessus, est ce serait parce que je traite seulement des dates et je compare seulement la valeur d'une cellule a une autre ? Peut on comparer deux dates en comparant les valeurs de deux cellules ?

    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
    Sub Check_the_date()
     
    Dim Cel As Range
    Dim Cel1 As Range
    Dim Plage As Range
    Dim Cel2(1262)
     
     
    Set Cel1 = Sheet2.Range("A2")
    Set Plage = Sheet1.Range("D2:D1293")
     
    For Each Cel In Plage
     
        For i = 0 To 1262
     
            If Cel.Value <> Cel1.Offset(i, 0) Then
     
                Cel2(i) = 0
     
            Else
     
                Cel2(i) = 1
     
            End If
     
        Next i
     
            Sum_Cel2 = Application.Sum(Cel2)
     
            If Sum_Cel2 = 0 Then
     
                Cel.Clear
     
            End If
     
    Next Cel
     
    End Sub

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub Check_the_date()
    Dim Cel As Range
    Dim Cel1 As Range, Cel2 As Range
    Dim Plage As Range
    Set Cel1 = Sheet2.Range("A:A")
    Dim Derl As Long
    Derl = Sheet1.Range("D" & Sheet1.Cells.Rows.Count).And(xlUp).Row
    Set Plage = Sheet1.Range("D2:D" & Derl)
    For Each Cel In Plage
        Set Cel2 = Nothing
        Set Cel2 = Cel1.Find(Cel.Value, Lookat:=xlWhole)
        If TypeName(Cel2) = "Nothing" Then Cel.Clear
    Next Cel
    End Sub

  3. #3
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2015
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2015
    Messages : 24
    Par défaut
    A partir de Der1 je n'ai pas bien compris le code, pourrais-tu m'eclairer s'il te plait

  4. #4
    Invité
    Invité(e)
    Par défaut
    Dans ton code tu fait ça Set Plage = Sheet1.Range("D2:D1293")!

    Hors ta plage peut varier je présume D12 ou D1293 ou même D6000!

    Moi je recherche la dernière ligne du tableau pour que ma boucle ne soit ni trop petite ni trop grande.

    Set Cel2 = Cel1.Find(Cel.Value, Lookat:=xlWhole) je recherche dans la colonne A de la feuille2.
    Si je ne trouve pas = "Nothing" je clear!
    Dernière modification par Invité ; 16/07/2015 à 18h04.

Discussions similaires

  1. Comparer une cellule a un ensemble de cellule
    Par Tchapeto dans le forum Général VBA
    Réponses: 1
    Dernier message: 27/07/2015, 11h39
  2. Réponses: 6
    Dernier message: 22/09/2014, 12h49
  3. Sécuriser une cellule ou un ensemble de cellules
    Par consuling dans le forum Excel
    Réponses: 1
    Dernier message: 03/07/2009, 03h09
  4. Choisir un ensemble de cellule dans une boucle
    Par Garlim dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 15/05/2007, 15h02
  5. [VBA-E]définir l'ensemble des cellules d'une feuille?
    Par yaya54 dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 02/03/2006, 08h46

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