Comparer 2 Range de 2 colonnes Excel

Fab2008 -  
Fab_2008 Messages postés 2 Statut Membre -
Bonjour,

J'ai 2 colonnes dans Excel qui se présentent comme ça :

Compte Montant
450002 0
450003 0
450002 10
450004 12
450007 0
450002 1

Je voudrais écrire une procédure en VB qui doit me permettre :

Vérifier si les comptes 450002 existent dans la colonne compte si oui
regarder si ya des valeurs différents de 0 dans la colonne Montant si oui
Resultat a retourner " YES"

Sinon

Resultat a retourner " No"

dans le cas en haut il doit me retouner YES

DANS CE CAS

Compte Montant
450002 0
450003 0
450002 10
450004 12
450007 0
450002 0
il doit me retouner NO

Merci de votre aide
Configuration: Windows 2000
Internet Explorer 6.0

1 réponse

  1. Polux31 Messages postés 7219 Statut Membre 1 204
     
    Bonjour,

    Ou veux-tu retourner YES ou NO dans une cellule ? ou un message ? Il n'y a qu'une seule valeur a tester ? ou faut-il tester toutes les valeurs de la 1ère colonne ?

    0
    1. Fab_2008 Messages postés 2 Statut Membre
       
      Voila mon code :


      With tempWorkbook.Sheets("AAAAA")
      For i = 2 To .Cells(60000, 47).End(xlUp).Row

      'TEST COMPTE 450002

      If tempWorkbook.Sheets("AAAAA").Cells(i, 43).Value = "450002" Then
      ThisWorkbook.Worksheets("BBBBB").Cells(ThisWorkbook.Worksheets("BBBBB").Cells(65536, 1).End(xlUp).Row + 1, 6).Value = "YES"
      Else
      If ThisWorkbook.Worksheets("BBBBB").Cells(ThisWorkbook.Worksheets("BBBBB").Cells(65536, 1).End(xlUp).Row + 1, 6).Value = "" Then
      ThisWorkbook.Worksheets("BBBBB").Cells(ThisWorkbook.Worksheets("BBBBB").Cells(65536, 1).End(xlUp).Row + 1, 6).Value = "NO"
      End If
      End If

      Ce code fonctionne, mais maintenant je dois rajouter le Test avec la colonne Montant qui se trouve dans tempWorkbook.Sheets("AAAAA").Cells(i, 47).Value !???? et j'arrive
      pas !!!
      0
      1. Fab_2008 Messages postés 2 Statut Membre > Fab_2008 Messages postés 2 Statut Membre
         
        Bonjour,

        J'ai trouvé ! voilà le code /

        If tempWorkbook.Sheets("AAAAA").Cells(i, 43).Value = "450002" Then
        Test = Test + Val(.Cells(i, 46))
        Else
        If Test = 0 Then
        ThisWorkbook.Worksheets("BBBBB").Cells(ThisWorkbook.Worksheets("BBBBB").Cells(65536, 1).End(xlUp).Row + 1, 6).Value = "NO"
        Else
        ThisWorkbook.Worksheets("BBBBB").Cells(ThisWorkbook.Worksheets("BBBBB").Cells(65536, 1).End(xlUp).Row + 1, 6).Value = "YES"
        End If
        End If
        0