En préambule, je doit avouer que je suis débutant en VBA mais très bon ami avec goolge. Cependant, j'ai beau avoir fouillé dansdifférents forum, je n'ai pas trouvé de solution à mon problème.
Mon problème est donc le suivant: ma macro doit appliquer une formule à partir de la première cellule vide en colonne N puis étendre cette formule jusqu'à la cellule N6000 (ou encore mieux étendre la formule jusqu'à la dernière cellule non vide de la colonne précédente M).
J'ai essayé cette formule mais elle considère que la cellule de départ est toujours N3 alors que cette cellule change de semaine en semaine puisque j'importe des données et je les empile les unes sous les autres...
Dim DerLig1 As Long
With Worksheets("Analysis Data")
DerLig1 = .Range("M6000").End(xlUp).Row
.Range("N3:N" & DerLig1).FormulaR1C1 = "=IF(RC[-4]="""","""",........)
End With
J'espere que ma requete est claire et vous remercie déja pour votre aide
Re : Etendre une formule à partir de la première cellule vide et jusqu'à une cellule
Tu as bien raison. J'ai mis mon exemple.
Pour expliquer le contexte : mon tableau vient comparer des données planifié avec des données réellements produites.
Je viens en semaine 27 rapatrier les données planifiés puis faire une rechercheV pour matcher les données produites.
La macro ci-dessus prend comme départ la cellule C3 et puisque ma semaine 27 est ma première semaine tout va bien.
En revanche, lorsque j'arrive en semaine 28 ma cellule de départ change et devient Cxx mais ma macro prend toujours C3 comme cellule de départ et vient me supprimer toute mes données précédemments importées.
Re : Etendre une formule à partir de la première cellule vide et jusqu'à une cellule
Essais cette macro sur ton fichier test
Code:
Sub pyrof()
l = 3
c = 1
num_semaine = 27
While Cells(l, c) <> ""
tmp = Val(Mid(Split(Cells(l, c), "_")(1), 2))
If tmp <> num_semaine Then
Cells(l, 3) = "Ma formule"
End If
l = l + 1
Wend
End Sub