Erreur d'execution '9'

  • Initiateur de la discussion Initiateur de la discussion droopy89
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

droopy89

XLDnaute Junior
Bonjour
encore un peu d'aide de votre part
J'ai crée une macro sur mon PC familiale avec une version d'excel 2003 elle marche très bien sur celui ci. le même fichier mis sur mon poste dans mon entreprise avec une version d'excel 2002 me met le message d'erreur " erreur d'execution 9 l'indice n'appartient pas à la sélection. lors du débogage seul mes déclarations sont surlignés en jaune
exemple : set CP = workbooks("nomdeclasseur").sheets("feuil1")
 
Re : Erreur d'execution '9'

Bonsoir Droopy, bonsoir le forum,

Difficile sans avoir le code en entier !
Je pense que le classeur auquel se réfère nomdeclasseur, dans le bout de code que tu daignes nous donner, n'est pas ouvert au moment de définir la variable CP
Code:
set CP = workbooks("nomdeclasseur").sheets("feuil1")
Comment l'as tu déclarée cette variable ?
Code:
Dim CP As WorkSheet
et ce nomdeclasseur ? c'est aussi une variable ?

Nous ne pouront d'aider davantange que si tu fais l'effort de nous en dire davantage toi aussi...
 
Re : Erreur d'execution '9'

Bonsoir Droopy, bonsoir le forum,

Ben tu vois quand tu veux...
Bon, ce qui m'étonne c'est que tu dises que la même macro marche sur Excel 2003 et pas sur Excel 2002. Je tourne avec Excel 2003 et ça a planté de suite. Ton classeur ne s'appelle pas FNCEssai mais FNCEssai.xls. Je n'ai pas fait tourné tout le code mais cette partie modifiée ne plante plus :
Code:
Set CP = Workbooks("FNCEssai.xls").Sheets("Compilation")
Set FE = Workbooks("FNCEssai.xls").Sheets("Fiche")
    For i = 5 To Workbooks("FNCEssai.xls").Sheets("Compilation").Range("A5").End(xlDown).Row
        If CP.Cells(i, 1) = FE.Range("T2") Then
D'ailleurs puisque tu te trouves dans le propre fichier tu n'as pas besoin de le spécifier dans le code. Ça marchera tout aussi bien comme ça :
Code:
Set CP = Sheets("Compilation")
Set FE = Sheets("Fiche")
    For i = 5 To Sheets("Compilation").Range("A5").End(xlDown).Row
        If CP.Cells(i, 1) = FE.Range("T2") Then
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
188
Réponses
6
Affichages
2 K
Retour