Public Sub CorrigeFormules() On Error Resume Next Dim feuille As Worksheet Dim ligne As Long Dim ligneFin As Long For Each feuille In ThisWorkbook.Worksheets 'Pour feuil1 If feuille.Name = "Feuil1" Then 'Calcul de la dernière ligne du tableau. 'Cette formule recherche la première cellule 'vide vers le bas en partant de la cellule 'AK3. Il faut que la colonne AK soit remplie 'pour chaque ligne du tableau. Si ce n'est pas 'la cas il faudra remplacer AK par une colonne pleine. 'S'il n'y en a aucune, il faudra trouver un autre moyen de 'déterminer la dernière ligne ligneFin = feuille.Range("AK3").End(xlDown).Row 'Pour chaque employé (de la ligne 3 à la 'fin du tableau en sautant 2 lignes à chaque fois) For ligne = 3 To ligneFin Step 2 'On effectue un recherche/remplace dans la plage AK-AM de la ligne courante et de la ligne 'suivante. On remplace REF# par la valeur de la colonne AN de la ligne courante feuille.Range("AK" & ligne & ":AM" & ligne + 1).Replace What:="REF#", _ Replacement:=feuille.Range("AN" & ligne).Value, LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False Next Else 'Pour toutes les feuilles autres que feuil1 feuille.Cells.Replace What:="REF#", Replacement:=feuille.Name, LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=False End If Next Application.Calculate End Sub
ligneFin = feuille.Range("AK3").End(xlDown).Row
ligneFin = 70
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question