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 :

Recherche nombre de valeur dans un champs


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 55
    Par défaut Recherche nombre de valeur dans un champs
    Bonjour,

    J'ai réalisé une macro qui m'indique lorsqu'une des valeurs de la colonne A se trouve dans la C.

    Code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub Macro2()
    Set cell = Range("A1")
    Do While cell <> ""
    B = Application.CountIf(Range("C1:C9"), cell)
       If B = 1 Then
            MsgBox "OK"
       Else
            MsgBox "PAS OK"
       End If
    Set cell = cell.Offset(1)
    Loop
    End Sub
    [/CODE]
    [/QUOTE]Pièce jointe 604427
    Nom : Capture.JPG
Affichages : 70
Taille : 23,3 Ko
    Cette macro fonctionne, mais le chiffre 66 en A2 se trouve 2 fois en C.
    Comment rajouter une fonction qui me précise que 66 se trouve en C mais 2 fois ?
    Et le 3 se trouve en C mais qu'une seule fois alors qu'il va être trouvé 2 fois avec ma macro.
    Là aussi je souhaiterai qu'il soit trouvé qu'une seule fois
    Merci par avance
    Cordialement

  2. #2
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 974
    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 974
    Par défaut
    bonjour
    si j'ai compris :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub Macro2()
    Set cell = Range("A1")
    Do While cell <> ""
    B = Application.CountIf(Range("C1:C9"), cell)
       If B > 0 Then
            MsgBox (cell.Value & "Se trouve :  " & B & "   fois")
       Else
            MsgBox "PAS OK"
       End If
    Set cell = cell.Offset(1)
    Loop
    End Sub

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 55
    Par défaut
    Merci
    je teste et reviens

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 55
    Par défaut
    Merci beaucoup BENNASR

    ça pourrait convenir à mes besoins, mais peut on apporter une légère modification:

    Le chiffre 3 de la colonne C n'existant qu'une seule fois , il doit être reconnu OK qu'une seule fois

    J'ai modifié A6 en valeur 33 pour montrer les 3 cas de figures possibles avec les 3 réponses possibles
    illustrées en colonne B

    Nom : Capture.JPG
Affichages : 76
Taille : 37,5 Ko

    Merci par avance

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 55
    Par défaut
    Pour apporter quelles précisions........
    Je viens de comprendre que B dans la fonction:
    B = Application.CountIf(Range("C1:C9"), cell)
    donne le nombre de fois que se trouve cell dans C1:C9
    Je croyait que le resultat B ne pouvait être que 0 ou 1
    Dans ce cas , la réponse à la première partie de mon problème était évident.

    Par contre pour n'afficher qu' 1 fois OK ( avec 3 dans mon cas) je ne vois toujours pas .....

  6. #6
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 974
    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 974
    Par défaut
    bonjour
    tu veux faire une sorte de rapprochement bancaire ??
    si c'est le cas mois personnellement je procède ainsi (sans VBA)
    Colonne A : données comptables
    Colonne B : données relevé bancaire
    colonne C : Pour détecter les mouvements non encore enregistrés par la banque formule :
    =SI(NB.SI($A$1:$A1;A1)>NB.SI($B$1:$B$9;A1);A1;"")
    NB : adapter le champs B1:B9 dans la formule

    Si tu veux faire l'inverse c a d les mouvements non comptabilisés ajouter une colonne D avec meme formule

Discussions similaires

  1. [AC-2016] Recherche d'une valeur dans plusieurs champs d'une même table
    Par fgk2000 dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 06/06/2018, 20h42
  2. Recherche une valeur dans deux champs
    Par smotte761 dans le forum Langage
    Réponses: 2
    Dernier message: 25/03/2011, 17h13
  3. Recherche de valeur dans un champs
    Par Invité dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 16/08/2007, 10h53
  4. Recherche de valeur dans un champ
    Par Invité dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 14/08/2007, 18h08
  5. Réponses: 4
    Dernier message: 07/09/2006, 15h02

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