[VBA] colorier une ligne avec conditions

frenchfries Messages postés 2 Statut Membre -  
frenchfries Messages postés 2 Statut Membre -
Bonjour,
je suis nouveau ici et novice sur VBA mais j'essaye de m'améliorer!
Alors mon probleme du moment:
j'ai deux feuilles excel remplies de données (une de 16000 ligne et une de 160 lignes environ)
Ce que je veux c'est que si les données de 2 colonnes sur une même ligne sont égales dans l'autre document alors on surligne la ligne en rouge.

(je sais pas si c'est très clair mais bon..)

alors mon code c'est ça pour l'instant

Sub colorier()

For i = 1 To 172
For j = 1 To 15813
If Worksheets("pc").Range("T" & i) = Worksheets("eu").Range("F" & j) And Worksheets("pc").Range("I" & i) = Worksheets("eu").Range("N" & j) Then

Rows("j:j").Select
Range(Cells(7, j)).Activate
With Selection.Interior
.ColorIndex = 3
.Pattern = xlSolid
End With

End If

Next j
Next i

End Sub

mais ça colore rien du tout (j'ai vérifier que c'était les bonnes colonnes et le même type d'écriture)
donc help!
en plus utiliser des boucle avec de si nombreuses lignes rend le programme assez lent.

Merci pour l'aide
Configuration: Windows 2000
Firefox 2.0.0.4

2 réponses

  1. mat
     
    j'ai fait un programme VB en stage qui faisait un peu la même chose
    la difference c'est que j'utilise des boucle while a la place de tes for mais ça fait la même chose voila:
    n1 = numero de ligne feuille 1
    n2= numero de ligne n2
    MaFeuN1=feuille de 160 lignes
    MaFeuN2=fruillre 16000 lignes
    n1=1
    n2=1
    While MaFeu1.Cells(n1,"met le numero de ta colone" ).Value <> ""
    If (MaFeuN1.Cells(n1, "numero de ta colone1 feuille 1").Value = MaFeuN2.Cells(n2, "numero de ta colonne1 feuille 2").Value And MaFeuN1.Cells(n1, "numero de ta colone2 feuille 1").Value = MaFeuN2.Cells(n2, "numero de ta colonne2 feuille 2").Value) Then
    MaFeuN1.Rows(n1).Interior.Color = RGB(255, 255, 0) 'jaune
    MaFeuN2.Rows(n2).Interior.Color = RGB(255, 255, 0)'jaune
    End If
    n1=n1+1
    n2=n2+1
    wend
    voila j'éspére que ça pourra t'aider

    mat
    3
  2. frenchfries Messages postés 2 Statut Membre
     
    Merci Mat pour le message d'aide mais j'ai l'impression que si je fait tourner ton programme, la boucle elle avance pas et on scanne pas toutes les lignes de la feuille de 16000 ligne.
    Je sais pas trop..
    0