Bonjour,

j'ai depuis peu commencer la programmation d'une macro sur Excel qui sert à supprimer certaines lignes,

mais lors de l’exécution de mon code VBA me sors une erreur d'incompatibilité à la L.17 et je n'arrive pas à voir le problème, je débute, un peu d'aide me serait bien utile !

Merci de votre compréhension

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
 
Sub supp_ligne()
'
' supp_ligne Macro
' L'objectif de cette macro est de supprimer les lignes du classeur en trop afin de faciliter le travail à un opérateur
' Les lignes enlevées sont celles qui contiennent la valeur "S" dans la colonne N, toutes les lignes contenant le même numéro
' que la ligne supprimé seront supprimées également
 
'Variable de type entier numérique
Dim numTel As Long
Dim ligne As Integer
ligne = 1
 
While Cells(ligne, 16) <> ""
'Cette structure conditionnelle va vérifier si la valeur dans la cellule N1 est égale à "S", si oui, le programme supprimera et gardera
'en mémoire le numéro de téléphone de la ligne qui vient d'être supprimée, sinon, il passera ) la ligne suivante
If Worksheets("EXTRACTION ACD").Range("N" + ligne) = "S" Or numTel = Cells(ligne, 16).Value Then
    numTel = Cells(ligne, 16).Value 'Affecte à la variable numTel la valeur contenue dans la colonne des numéro de téléphone
    Selection.EntireRow.Delete 'Sélectionne et supprime la ligne complète
    MsgBox "Ligne supprimée" + numTel 'Test
Else
    MsgBox "passer la ligne"
    ligne = ligne + 1
End If
Wend
MsgBox "Macro terminée"
End Sub