Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

l'indice n'appartient pas à la selection !

arnaoke

XLDnaute Occasionnel
Bonjour,

petit pépin avec ce bout de code, l'erreur est surement trés bête, mais je n'arrive pas à la cerner :

Code:
With classeurDestination.Sheets("Suivi avenants génériques") 
    For ligne = 8 To .Range("C8").End(xlDown).Row '1° boucle pour parcourir tous les contrats de "Suivi avenants génériques"
        numContrat = .Range("C" & ligne).Value
        numAvenant = .Range("I" & ligne).Value 'on stock les valeurs recherchées dans les variables
        For ligne2 = 2 To derniereLigne
            If Sheets("traitementGenerique").Range("C" & ligne2).Value = numContrat And Sheets("traitementGenerique").Range("I" & ligne2).Value = numAvenant Then
                Sheets("traitementGenerique").Range("A" & ligne2 & ":H" & ligne2).Copy .Range("A" & ligne)
                Sheets("traitementGenerique").Range("I" & ligne2).Copy .Range("I" & ligne)
                Sheets("traitementGenerique").Range("J" & ligne2).Copy .Range("K" & ligne)
                Sheets("traitementGenerique").Range("K" & ligne2).Copy .Range("S" & ligne)
            End If
        Next ligne2
    Next ligne
End With

l'erreur survient à la ligne
Code:
If Sheets("traitementGenerique").Range("C" & ligne2).Value = numContrat And Sheets("traitementGenerique").Range("I" & ligne2).Value = numAvenant Then

des idées ?

merci de m'avoir lut,

Arnaoke
 
Dernière édition:

job75

XLDnaute Barbatruc
Re : l'indice n'appartient pas à la selection !

Bonjour arnaoke,

A priori cela doit venir d'un nom de feuille qui n'existe pas.

Vérifiez-les tous dans le code, en faisant attention aux accents sur "générique".

A+
 

job75

XLDnaute Barbatruc
Re : l'indice n'appartient pas à la selection !

Re,

Ah oui, vous travaillez sur plusieus classeurs, il faut préciser le classeur.

Le mieux est de définir la feuille au début, par exemple :

Code:
Set F = classeurDestination.Sheets("traitementGenerique")
et d'écrire ensuite :

Code:
[CODE]If F.Range("C" & ligne2) = numContrat And F.Range("I" & ligne2) = numAvenant Then
[/CODE]
Nota : les .Value sont inutiles...

A+
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…