Voila j'ai un problème avec ma fin de fichier. Mon code marche super bien, mais dans mon fichier, quelqu'un a rajouter une colonne a formule plus bas que la ou je voudrais qui est la cellule ou est écrit "ne pas supprimer ces lignes".
Pour l'instant mon code descend jusqu'a la dernière ligne occupé du fichier ce qui la me gene un peu. J'ai tenté une modification avec une boucle while mais VBA m'envoit pété il me met une autre ligne en erreur alors qu'elle marche bien.

Voici mon code, je suis toujours preneuse d'idée:

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
29
30
31
32
33
34
35
36
37
38
 
Sub Bouton11950_QuandClic()
 
'Déclaration des variables'
Dim NumCol, derniereligneupit, ColonneRepere, DerLigne As Integer
Dim sh As Worksheet
DerLigne = derniereligneupit
derniereligneupit = 17
ColonneRepere = 28
 
'Désactivation des filtres'
Set sh = Workbooks("Synthese_type_01.xls").Worksheets("Feuille principale")
If sh.FilterMode Then sh.ShowAllData
 
'Arreter la boucle infinie'
While Workbooks("Synthese_type_01.xls").Worksheets("Feuille principale").Cells(derniereligneupit, ColonneRepere) <> "Veuillez ne pas supprimer ces lignes "
 derniereligneupit = derniereligneupit + 1
        If derniereligneupit > 1000 Then
            MsgBox ("Arrêt du traitement: boucle infinie")
                Exit Sub
            End If
        Wend
 
'Définir la spécialité de la celulle, et jusqu'a quelle celulle il doit prendre le modèle'
derniereligne = Range("IF567").SpecialCells(xlCellTypeLastCell).Row
 
'De la colonne 36 à la 256'
For NumCol = 36 To 256
 
'Test si = dans cellule, sinon rien '
If Left(Cells(20, NumCol).Formula, 1) = "=" Then
 
'Balaie chaque cellule de la ligne 20 pour chaque colonne'
Range(Cells(20, NumCol), Cells(derniereligne, NumCol)).FillDown
    End If
        Next NumCol
 
End Sub
Et donc je voudrais lui dire d'aller jusqu'a veuillez ne pas supprimer ces lignes, mais comme je disais quand j'ai tenté une boucle while il m'a mise en erreur sir la ligne
Code : Sélectionner tout - Visualiser dans une fenêtre à part
 Range(Cells(20, NumCol), Cells(derniereligne, NumCol)).FillDown