Bonjour à tous,
Je viens vers vous car j'ai un problème avec une boucle de recherche. (elle s’arrête à la ligne 15... )
Le but est de comparer 3 éléments de 2 feuilles excell.
Une fois les 3 conditions ok => Copier certaines cellules du fichier 1 dans le fichier B
Le code:
ub Bouton2_Clic()
'variables lignes correspondantes
Dim ISuividebut As Integer
Dim ISuivifin As Integer
Dim IZQSCdebut As Integer
Dim IZQSCfin As Integer
'Sheets("SUIVI_FAI_A350-1000").Unprotect
'Activation feuille SUIVI_FAI_A350-1000
Worksheets("SUIVI_FAI_A350-1000").Activate
'recherche dernière line de l'extract SUIVI_FAI_A350-1000
ISuivifin = Worksheets("SUIVI_FAI_A350-1000").Range("A3").End(xlDown).Row
'Activation feuille MAJ_ZQSC
Worksheets("MAJ_ZQSC").Activate
'recherche dernière line de l'extract MAJ_ZQSC
IZQSCfin = Worksheets("MAJ_ZQSC").Range("A2").End(xlDown).Row
'boucle de recherche
For ISuividebut = 3 To ISuivifin
For IZQSCdebut = 2 To IZQSCfin
'Recherche du PN suivi dans ZQSC
If Worksheets("SUIVI_FAI_A350-1000").Range("A" & ISuividebut) = Worksheets("MAJ_ZQSC").Range("A" & IZQSCdebut) Then
'Recherche de l'indice suivi dans ZQSC
ElseIf Worksheets("SUIVI_FAI_A350-1000").Range("C" & ISuividebut) = Worksheets("MAJ_ZQSC").Range("G" & IZQSCdebut) Then
'Recherche DU FOURNISSEUR suivi dans ZQSC
ElseIf Worksheets("SUIVI_FAI_A350-1000").Range("M" & ISuividebut) = Worksheets("MAJ_ZQSC").Range("D" & IZQSCdebut) Then
'Si vrai ecriture des infos
Worksheets("SUIVI_FAI_A350-1000").Range("N" & ISuividebut).Value = Worksheets("MAJ_ZQSC").Range("B" & IZQSCdebut).Value
Worksheets("SUIVI_FAI_A350-1000").Range("E" & ISuividebut).Value = Worksheets("MAJ_ZQSC").Range("H" & IZQSCdebut).Value
Worksheets("SUIVI_FAI_A350-1000").Range("O" & ISuividebut).Value = Worksheets("MAJ_ZQSC").Range("F" & IZQSCdebut).Value
Worksheets("SUIVI_FAI_A350-1000").Range("F" & ISuividebut).Value = Worksheets("MAJ_ZQSC").Range("I" & IZQSCdebut).Value
Worksheets("SUIVI_FAI_A350-1000").Range("G" & ISuividebut).Value = Worksheets("MAJ_ZQSC").Range("J" & IZQSCdebut).Value
Worksheets("SUIVI_FAI_A350-1000").Range("L" & ISuividebut).Value = Worksheets("MAJ_ZQSC").Range("K" & IZQSCdebut).Value
Worksheets("SUIVI_FAI_A350-1000").Range("AI" & ISuividebut).Value = Worksheets("MAJ_ZQSC").Range("M" & IZQSCdebut).Value
Worksheets("SUIVI_FAI_A350-1000").Range("D" & ISuividebut).Value = Worksheets("MAJ_ZQSC").Range("R" & IZQSCdebut).Value
Worksheets("SUIVI_FAI_A350-1000").Range("P" & ISuividebut).Value = Worksheets("MAJ_ZQSC").Range("S" & IZQSCdebut).Value
Exit For
'Next IZQSCdebut
'End If
'Else
'Next IZQSCdebut
'End If
'Else
'Next
End If
Next IZQSCdebut
Next
End Sub
En espérant que vous puissiez m'aider..
Je reste disponible pour toutes vos interrogations
Cordialement
adumaine
Je viens vers vous car j'ai un problème avec une boucle de recherche. (elle s’arrête à la ligne 15... )
Le but est de comparer 3 éléments de 2 feuilles excell.
Une fois les 3 conditions ok => Copier certaines cellules du fichier 1 dans le fichier B
Le code:
ub Bouton2_Clic()
'variables lignes correspondantes
Dim ISuividebut As Integer
Dim ISuivifin As Integer
Dim IZQSCdebut As Integer
Dim IZQSCfin As Integer
'Sheets("SUIVI_FAI_A350-1000").Unprotect
'Activation feuille SUIVI_FAI_A350-1000
Worksheets("SUIVI_FAI_A350-1000").Activate
'recherche dernière line de l'extract SUIVI_FAI_A350-1000
ISuivifin = Worksheets("SUIVI_FAI_A350-1000").Range("A3").End(xlDown).Row
'Activation feuille MAJ_ZQSC
Worksheets("MAJ_ZQSC").Activate
'recherche dernière line de l'extract MAJ_ZQSC
IZQSCfin = Worksheets("MAJ_ZQSC").Range("A2").End(xlDown).Row
'boucle de recherche
For ISuividebut = 3 To ISuivifin
For IZQSCdebut = 2 To IZQSCfin
'Recherche du PN suivi dans ZQSC
If Worksheets("SUIVI_FAI_A350-1000").Range("A" & ISuividebut) = Worksheets("MAJ_ZQSC").Range("A" & IZQSCdebut) Then
'Recherche de l'indice suivi dans ZQSC
ElseIf Worksheets("SUIVI_FAI_A350-1000").Range("C" & ISuividebut) = Worksheets("MAJ_ZQSC").Range("G" & IZQSCdebut) Then
'Recherche DU FOURNISSEUR suivi dans ZQSC
ElseIf Worksheets("SUIVI_FAI_A350-1000").Range("M" & ISuividebut) = Worksheets("MAJ_ZQSC").Range("D" & IZQSCdebut) Then
'Si vrai ecriture des infos
Worksheets("SUIVI_FAI_A350-1000").Range("N" & ISuividebut).Value = Worksheets("MAJ_ZQSC").Range("B" & IZQSCdebut).Value
Worksheets("SUIVI_FAI_A350-1000").Range("E" & ISuividebut).Value = Worksheets("MAJ_ZQSC").Range("H" & IZQSCdebut).Value
Worksheets("SUIVI_FAI_A350-1000").Range("O" & ISuividebut).Value = Worksheets("MAJ_ZQSC").Range("F" & IZQSCdebut).Value
Worksheets("SUIVI_FAI_A350-1000").Range("F" & ISuividebut).Value = Worksheets("MAJ_ZQSC").Range("I" & IZQSCdebut).Value
Worksheets("SUIVI_FAI_A350-1000").Range("G" & ISuividebut).Value = Worksheets("MAJ_ZQSC").Range("J" & IZQSCdebut).Value
Worksheets("SUIVI_FAI_A350-1000").Range("L" & ISuividebut).Value = Worksheets("MAJ_ZQSC").Range("K" & IZQSCdebut).Value
Worksheets("SUIVI_FAI_A350-1000").Range("AI" & ISuividebut).Value = Worksheets("MAJ_ZQSC").Range("M" & IZQSCdebut).Value
Worksheets("SUIVI_FAI_A350-1000").Range("D" & ISuividebut).Value = Worksheets("MAJ_ZQSC").Range("R" & IZQSCdebut).Value
Worksheets("SUIVI_FAI_A350-1000").Range("P" & ISuividebut).Value = Worksheets("MAJ_ZQSC").Range("S" & IZQSCdebut).Value
Exit For
'Next IZQSCdebut
'End If
'Else
'Next IZQSCdebut
'End If
'Else
'Next
End If
Next IZQSCdebut
Next
End Sub
En espérant que vous puissiez m'aider..
Je reste disponible pour toutes vos interrogations
Cordialement
adumaine