Bonjour
@sebsut1
On va essayer de décortiquer cette instruction.
Le
if(....) Then Goto etapeVendredi, signifie que si le résultat de ce qui est entre les parentheses est VRAI, alors on le programme continue a partir de l'instruction située juste apres l'etiquette
etapeVendredi: dans le programme. Sinon, le programme continue juste a la ligne suivante.
Maintenant, regardons la condition :
ThisWorkbook.Worksheets(txt).Cells(Sheets("CONSTANTES").Cells(2, 11).Value, 10)
Le
ThisWorkbook.Worksheets(txt) fait reference a un onglet du fichier Excel dont le nom se trouve dans la variable nommée
txt.
Cells(Sheets("CONSTANTES").Cells(2, 11).Value
Dans cet onglet, on va voir le contenu de la cellule située au croisement de la xieme ligne et
10eme colonne.
La xieme ligne est representee par la formule
Sheets("CONSTANTES").Cells(2, 11).Value. Ceci évalue le contenu de la cellule K2 de la feuille CONSTANTES. En effet .Cells(2, 11) représente la cellule K2 (2eme ligne, 11e colonne).
En conclusion si le contenu de la cellule au croisement de la ligne définie en 'CONSTANTES'!K2 et de la colonne 10 et située dans la feuille dont le nom est dans la variable txt est VRAI, alors on execute les instructions situées après l'etiquette etapeVendredi. Sinon on poursuit a la ligne de code suivante.
L'erreur peut se situer dans le contenu de la variable txt, dans le contenu de la cellule 'CONSTANTES'!K2 ou dans le contenu de la cellule définie par
ThisWorkbook.Worksheets(txt).Cells(Sheets("CONSTANTES").Cells(2, 11).Value, 10)
C'est peut être pas très clair mais difficile pour ;oi de faire mieux.