Bonjour,

Désolé pour le titre du post, je ne savais trop comment le tourner...

Je vais tenter de poser le contexte et vous expliquer mon souci.

Dans un classeur Excel contenant autant de feuilles que de semaines dans une année civile, chacune comportant plusieurs colonnes pour les 7 jours de ladite semaine, je viens importer un csv issu d'un batch qui tourne quotidiennement.

De ce batch, je définis la semaine et le jour de la semaine. Cela dans le but de définir ma feuille cible et ma colonne de départ.

Chaque colonne ayant un nombre figé (dans le sens fixe) de lignes, je n'ai plus qu'à dérouler sur chacune de mes cellules une formule.

Enfin... "je n'ai plus qu'à", c'est en théorie car je n'y arrive pas

Excel me ramène le message suivant "Propriété ou méthode non gérée par cet objet)"

Ci-dessous une partie de mon code, où il bloque au sein de la boucle "For i..." (pour info, les variables : MyDay, i et j ont été dimensonnées en Integer)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
'Définition de la semaine et du jour à traiter à partir de la date des batchs importés
 
    Sheets("Cumul Hebdo PRW").Range("H1").FormulaR1C1 = "=INT((R[1]C[-2]-SUM(MOD(DATE(YEAR(R[1]C[-2]-MOD(R[1]C[-2]-2,7)+3),1,2),{1E+99;7})*{1;-1})+5)/7)"
    Sheets("Cumul Hebdo PRW").Range("I1").FormulaR1C1 = "=+IF(WEEKDAY(R[1]C[-3])=1,7,WEEKDAY(R[1]C[-3])-1)"
 
    MyWeek = Sheets("Cumul Hebdo PRW").Range("H1").Value
    MyDay = Sheets("Cumul Hebdo PRW").Range("I1").Value
 
'Rappatriement des informations cherchées en face de chaque matricule
''Grille du CR
 
    With Sheets(MyWeek) 'On définit comme feuille cible celle de la semaine du batch
 
    Set TblRefLC = Sheets("base CR").Range("A" & Rows.Count).End(xlUp).Offset(0, 4)
    TblRef = "'base CR'!" & Sheets("base CR").Range("B2", TblRefLC).Address(, , xlR1C1)
 
        For j = MyDay * 7 - 4 To 50 Step 7   'On définit comme colonne de départ celle définie par le jour du batch
 
            For i = 5 To 29
 
                .Cells(i, j).FormulaR1C1 "=IF(RC[-1]="""","""",IF(AND(LEN(RC[-1])>=4,ISERROR(VALUE(LEFT(RC[-1],4)))),VLOOKUP(VALUE(LEFT(RC[-1],3))," & TblRef & _
                ",4,0),VLOOKUP(VALUE(LEFT(RC[-1],4))," & TblRef & ",4,0)))"
 
            Next i
 
        Next j
 
     End With
Pour info, jusqu'à l'écriture de cette boucle, j'ai tout testé, et tout fonctionne (Excel me trouve bien la feuille, ma colonne j, tout est ok).

J'ai tenté un pour test, et ça bug aussi, donc je ne sais que coder pour faire ce que je souhaite faire.

Une âme charitable serait-elle en mesure de me dépanner et m'éclairer de ses lumières ?

Je vous remercie d'avance, et tiens à m'excuser si ce problème a déjà été posé et résolu. Je cherche bien évidemment sur le forum en parallèle.

Vous souhaitant une excellente journée à toutes et tous.