Macro pour supprimer une ligne selon critères
Fermé
smaret
Messages postés
5
Date d'inscription
dimanche 13 mars 2011
Statut
Membre
Dernière intervention
2 avril 2011
-
13 mars 2011 à 19:19
ccm81 Messages postés 10903 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 19 novembre 2024 - 14 mars 2011 à 18:23
ccm81 Messages postés 10903 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 19 novembre 2024 - 14 mars 2011 à 18:23
A voir également:
- Macro supprimer ligne selon critère
- Supprimer une page word - Guide
- Supprimer compte instagram - Guide
- Aller à la ligne excel - Guide
- Ligne occupée - Forum SFR
- Partager photos en ligne - Guide
2 réponses
ccm81
Messages postés
10903
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
19 novembre 2024
2 428
Modifié par ccm81 le 14/03/2011 à 17:42
Modifié par ccm81 le 14/03/2011 à 17:42
bonjour
Changer les valeurs des constantes
Completer le tableau des mots clés (en majuscules)
Est ce que ça répond a la question
Option Explicit Option Base 1 Sub SupprimeLigne() Const NomFeuille = "Feuil1" Const colcritere = "F" Const PremLig = 1 Dim TabMotsCles Dim s As String Dim Lig As Long, DerLig As Long, NumMot As Long, NbMots As Long Dim trouve As Boolean ' initalisations TabMotsCles = Array("LTD", "LTVA", "VIGNETTE", "PRODUCTION") NbMots = UBound(TabMotsCles, 1) Application.ScreenUpdating = False With Sheets(NomFeuille) ' dernière ligne DerLig = .Range(colcritere & 65536).End(xlUp).Row ' traitement de la colonne colcritere For Lig = DerLig To PremLig Step -1 ' met en majuscule la cellule s = UCase(.Range(colcritere & Lig)) trouve = False ' recherche d'un mot cle dans s For NumMot = 1 To NbMots If InStr(1, s, TabMotsCles(NumMot)) > 0 Then trouve = True Exit For End If Next NumMot ' si trouve mot cle supprimer la ligne lig If trouve Then .Range(colcritere & Lig).EntireRow.Delete End If Next Lig End With Application.ScreenUpdating = True End Sub Private Sub CommandButton1_Click() Call SupprimeLigne End Sub
Changer les valeurs des constantes
Completer le tableau des mots clés (en majuscules)
Est ce que ça répond a la question
14 mars 2011 à 17:41
Un grand merci :-)
En principe, le classeur contenant la macro ne va pas être modifié. Je voudrai activer la macro sur un autre classeur dont le nom peut changer (ex. 20120321-Rapport journalier)
Est il possible d'activer la macro sur un autre classeur ouvert ou actif.
Avec cette solution, je vais pouvoir terminer ma macro.
D'avance, je te remercie pour ton aide :-))
14 mars 2011 à 17:43
j'ai fait une modif à la ligne
DerLig = .Range(colcritere & 65536).End(xlUp).Row
14 mars 2011 à 18:01
J'ai essayé la macro avec un autre classeur ouvert et les cellules de la collone F avec les critères définis n'ont pas été supprimées.