julien974
XLDnaute Occasionnel
Bonjour,
Je suis en stage et j’aurais besoin d’aide concernant la suppression de lignes selon des critères.
Mon fichier est composé de différentes en-tête de colonne (destinataire, type, poste, lieu stock, co, OF, prèl)
Je souhaiterais supprimer certaines lignes de la manière suivante :
Supprimer les lignes dont destinataire = 23 et type = SO46D et poste = P4 et lieu stock = BLE
Si et seulement si il existe une ligne dont destinataire = 23 et type = SO46D et poste = P7 et lieu stock = BLE
ET dont les N° CO sont identiques !
Sinon passer à la ligne suivante
Voici un début d’idée mais je ne m’en sort pas, il manque la seconde condition qu’il faudrait imbriquer, mais comment ? :
Sub supprligneseloncritères()
Sheets("BLEU2").Activate
Range("A2").Select
While ActiveCell <> ""
If ActiveCell.Value = "23" And ActiveCell.Offset(0, 1).Value = "SO46D" And ActiveCell.Offset(0, 2).Value = "P4" And ActiveCell.Offset(0, 3).Value = "BLE" Then
Selection.EntireRow.Delete
Else: ActiveCell.Offset(1, 0).Select
End If
Wend
End sub
Ci-joint, le fichier (sachant qu’il comptabilisera beaucoup plus de lignes…)
Merci de votre aide,
Julien974
Je suis en stage et j’aurais besoin d’aide concernant la suppression de lignes selon des critères.
Mon fichier est composé de différentes en-tête de colonne (destinataire, type, poste, lieu stock, co, OF, prèl)
Je souhaiterais supprimer certaines lignes de la manière suivante :
Supprimer les lignes dont destinataire = 23 et type = SO46D et poste = P4 et lieu stock = BLE
Si et seulement si il existe une ligne dont destinataire = 23 et type = SO46D et poste = P7 et lieu stock = BLE
ET dont les N° CO sont identiques !
Sinon passer à la ligne suivante
Voici un début d’idée mais je ne m’en sort pas, il manque la seconde condition qu’il faudrait imbriquer, mais comment ? :
Sub supprligneseloncritères()
Sheets("BLEU2").Activate
Range("A2").Select
While ActiveCell <> ""
If ActiveCell.Value = "23" And ActiveCell.Offset(0, 1).Value = "SO46D" And ActiveCell.Offset(0, 2).Value = "P4" And ActiveCell.Offset(0, 3).Value = "BLE" Then
Selection.EntireRow.Delete
Else: ActiveCell.Offset(1, 0).Select
End If
Wend
End sub
Ci-joint, le fichier (sachant qu’il comptabilisera beaucoup plus de lignes…)
Merci de votre aide,
Julien974