XL 2019 Erreur exécution 9

  • Initiateur de la discussion Initiateur de la discussion matmac
  • 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 !

matmac

XLDnaute Occasionnel
Bonjour,

J'avais posté à la suite d'un premier post concernant le même fichier et un autre bug (résolu depuis), mais je n'ai pas eu de réponse, je créé donc un nouveau post.
J'ai donc un bug sur le fichier joint : lorsque je lance le chrono sur la feuille "Chrono + Classement" en cliquant sur l’icône triangle, puis que j'ouvre un autre un autre fichier excel en parallèle, le chrono s'arrête et j'ai un message d'erreur "erreur d'exécution '9' l'indice n'appartient pas à la sélection". J'ai fait une capture d'écran de la boite de dialogue de débogage, avec la ligne surlignée en jaune.
Je met en pj la capture d'écran et le fichier.

Merci par avance
Mat
 

Pièces jointes

  • Capture d’écran 2021-10-20 085222.png
    Capture d’écran 2021-10-20 085222.png
    98.1 KB · Affichages: 29
  • Run&Bike OT V21.3.2.xlsm
    Run&Bike OT V21.3.2.xlsm
    161.1 KB · Affichages: 5
Solution
Bonsoir Matmac, le forum

Votre commande se référe au classeur actif
Quand vous ouvrez un nouveau classeur, il devient le classeur actif, et comme il ne contient pas la feuille "chrono+classement", ça plante !
remplacez votre ligne par celle ci qui cible pour la feuille le classeur contenant la macro exécutée.

Bien cordialement, @+
VB:
ThisWorkbook.Sheets("Chrono+Classement").Range("O2").Value = Time - depart + (ThisWorkbook.Sheets("Chrono+Classement").Range("T2").Value / 1440)

ou en reprenant la macro avec un with en n'oubliant pas les points devant les range
VB:
Public Sub go_Chrono()
    'Programmation de l'évènement toutes les secondes
    temps = Now + TimeValue("00:00:01")
    Application.OnTime temps, "go_Chrono"
    With...
Bonsoir Matmac, le forum

Votre commande se référe au classeur actif
Quand vous ouvrez un nouveau classeur, il devient le classeur actif, et comme il ne contient pas la feuille "chrono+classement", ça plante !
remplacez votre ligne par celle ci qui cible pour la feuille le classeur contenant la macro exécutée.

Bien cordialement, @+
VB:
ThisWorkbook.Sheets("Chrono+Classement").Range("O2").Value = Time - depart + (ThisWorkbook.Sheets("Chrono+Classement").Range("T2").Value / 1440)

ou en reprenant la macro avec un with en n'oubliant pas les points devant les range
VB:
Public Sub go_Chrono()
    'Programmation de l'évènement toutes les secondes
    temps = Now + TimeValue("00:00:01")
    Application.OnTime temps, "go_Chrono"
    With ThisWorkbook.Sheets("Chrono+Classement")
        .Range("O2").Value = Time - depart + (.Range("T2").Value / 1440)
    End With
End Sub
 
- 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
11
Affichages
131
  • Question Question
Microsoft 365 Macro archivage
Réponses
9
Affichages
543
Retour