Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Supprimer des lignes sous condition

  • Initiateur de la discussion Initiateur de la discussion boby
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

B

boby

Guest
Bonjour à tous,

je suis le nouveau de la classe

j'ai un fichier dont je souhaiterai supprimer quelques lignes sous conditions😡 :

- colonne H : supprimer toutes les lignes dont les codes ISIN ne commençant pas par "AT" - "DK" - "FI" - "GB" - "IE" - "JP" - "NL" - "PT" - "XS0"
ps: (0=zero)
😕
- colonne W: supprimer toutes les lignes dont les cellules ne contiennent pas "UNM" ou "ICMO" conserver les cellules vides
😱
- trier par ordre croissant les colonnes N puis O
🙄
- sauter trois lignes entières quand dans la colonnes N on passe de "C" à "E" et de "E" à "X"

- mise en page:
uniformiser les lignes et les colonnes avec un zoom à 82%, des cellules centrées ajustée, les colonnes J K et L en separateur de milliers, et une couleur de remplissage blanche puis fenetres/reorganiser/horizontal

voici un echantillon du fichier

merci d'avance pour votre aide
 

Pièces jointes

Dernière modification par un modérateur:
Re : Supprimer des lignes sous condition

re,

Bizarre que ca te lance l'impression de toutes tes feuilles, je suis sur qu'il doit exister une option, mais ou ???

Sinon avec un bout de code tu dois pouvoir bidouiller, mais c'est pas terrible. Un truc du genre :
Sub test()
Dim i%

For i = 1 To Sheets.Count
If Not Sheets(i).UsedRange = "" Then
'ici tu lances l'impression de ta feuille
End If
Next i
End Sub


@+
 
Re : Supprimer des lignes sous condition

Bonjour,

J'ai un petit soucis j'ai réalisé une macro avec plusieurs suppressions sous condition,
mais ma macro met énormément de temps à se réaliser ...
Y-aurait-il un moyen de réduire ce laps de temps (j'ai déjà réduit la fenêtre comme j'ai pu le lire dans un post) ?

Dim ligne As Double

For ligne = Range("A65536").End(xlUp).Row To 1 Step -1
If Cells(ligne, 1) = "" Then Rows(ligne).Delete
If ...
Next ligne

Merci.
 
Re : Supprimer des lignes sous condition

Salut,

Essaye peut etre un truc de ce genre (ca permet de figer l'ecant au moment ou la macro s'execute):
Code:
Sub Tamacro()
 
Application.ScreenUpdating = False
[COLOR=seagreen]'ton code[/COLOR]
Application.ScreenUpdating = True
End Sub

@+
 
Re : Supprimer des lignes sous condition

Bonsoir,

j'ai quelques notions sur VBA mais je ne connais pas du tout la fonction SelectCase

Pouvez-vous me dire à qu'elle est son utilité ? Comment elle fonctionne ? (et si éventuellement vous pouvez me donner un exemple)

Je vous remercie beaucoup
 
Re : Supprimer des lignes sous condition

Salut,

Et bien avec ton exemple, cela donnerai quelque chose de ce genre :

Code:
Dim ligne As Double

Application.ScreenUpdating = False
For ligne = Range("A65536").End(xlUp).Row To 1 Step -1
Select Case Cells(ligne, 1) 
Case "" or 1 or "aa"
     Rows(ligne).Delete
Case 2 or "bb"
     Rows(ligne).Interior.ColorIndex=6
End Select
Next ligne
Application.ScreenUpdating = True

Je t'ai mis plusieurs conditions dans la case ainsi que 2 case afin que tu comprennes le mécanisme. Il te suffit simplement d'adapter selon tes besoins.

@+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
10
Affichages
516
F
Réponses
2
Affichages
690
F
A
Réponses
4
Affichages
869
A
H
Réponses
5
Affichages
678
C
Réponses
1
Affichages
2 K
claivier_58
C
C
Réponses
3
Affichages
2 K
claivier_58
C
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…