> Tous les forums > Forum Bureautique
 Excel 2007 - Suppression selon formatSujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
Kassie
  Posté le 25/03/2010 @ 16:40 
Aller en bas de la page 
Petite astucienne

Bonjour à tous,

Je travaille sous Excel 2007. J'ai un classeur dans lequel des doublons sont présents dans la colonne A et D mais ou j'ai des données jusqu'à la colonne H. Ces doublons sont colorés via une macro ainsi que certaines cellules de la colonne H, sur d'autres valeurs. Cette partie là, pas de problèmes.

La question est la suivante: Comment faire pour supprimer les lignes dont aucune cellule n'est coloriée?

Ca peut etre une formule, une mise en forme conditionnelle ou une macro, j'avoue avoir un blanc pour y arriver.

À savoir que mon fichier comportera dans les 20 000 lignes, j'implore votre aide svp !

Merci d'avance !

Publicité
Mytå
 Posté le 25/03/2010 à 16:56 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Salut le forum

Ta macro "Colorer" les doublons pourrait déjà supprimer ceux qui ne le sont pas.

A te relire

Mytå



Modifié par Mytå le 25/03/2010 16:58
Kassie
 Posté le 25/03/2010 à 17:55 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petite astucienne

Bonjour Myta,

C'est en effet une idée de l'ajouter ou plutot d'en faire une autre qui puisse faire ca, puisque j'ai des opérations à faire entre les deux étapes.

En VBA donc, comment faire pour lui dire de sélectionner toute la ligne si aucune cellule de cette ligne n'est en format conditionnel ?

Tel est finalement la vraie question...

Mytå
 Posté le 25/03/2010 à 18:01 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Re le forum

Un format conditionnel n'est pas évidant à traiter en VBA.

Pourrais-tu fournir ton code qui colore les doublons ?

Mytå

Kassie
 Posté le 25/03/2010 à 18:25 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petite astucienne

Rebonjour Myta et tous !

Voici le code que j'utilise, ramassé je ne sais plus où sur le net mais ca fait exactement ce que j'ai besoin.

Sub MarqueLesDoublons()
Dim Plage As Range, i&, Cell As Range, Rng As Range

On Error Resume Next
Set Plage = Application.InputBox("Plage à examiner", Type:=8)
If IsEmpty(Plage) Then Exit Sub

Application.ScreenUpdating = False

For Each Cell In Plage
For i = 1 To Plage.Count
Set Rng = Cell.Offset(i)
If Rng <> "" And Rng = Cell Then
Cell.Interior.ColorIndex = 43
Rng.Interior.ColorIndex = 43
Exit For
End If
Next i
Next Cell

End Sub

Donc si on prends le problème autrement... comment pourrait-on formuler que si toutes les cellules d'une ligne de A à H sont blanches (Cell.Interior.ColorIndex = 2), alors il faut sélectionner la ligne au complet et la supprimer?

Merci

Kassie
 Posté le 25/03/2010 à 21:35 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petite astucienne

Rebonjour !

Je planche sur le problème depuis tout à l'heure mais je n'y arrive pas. Voici ce que j'ai de fait pour le moment:

Sub SupprimerLigneBlanche()
Selection.CurrentRegion.Select
ActiveCell.Offset(1, 0).Range("a1").Select
Do While ActiveCell.Offset(0, 0).Value <> ""
If ActiveCell.Offset(0, 1).Interior.ColorIndex = 2 _
And ActiveCell.Offset(0, 1).Interior.ColorIndex = 2 _
And ActiveCell.Offset(0, 1).Interior.ColorIndex = 2 _
And ActiveCell.Offset(0, 1).Interior.ColorIndex = 2 _
And ActiveCell.Offset(0, 1).Interior.ColorIndex = 2 _
And ActiveCell.Offset(0, 1).Interior.ColorIndex = 2 _
And ActiveCell.Offset(0, 1).Interior.ColorIndex = 2 Then

Range(Trim(Str(ActiveCell.Row)) & ":" & Trim(Str(ActiveCell.Row))).Select

End If
ActiveCell.Offset(1, 0).Select
Loop

End Sub

Ma macro s'éxécute mais ne supprime rien, j'ai donc des erreurs dans les conditions mais je ne vois pas quoi...

Une bonne âme fortiche en VBA pour m'aider svp ?

Kassie
 Posté le 29/03/2010 à 14:27 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petite astucienne

Bonjour

un petit up pour ce message, j'aurais vraiment besoin d'aide de quelqu'un qui s'y connait en VBA pour m'aider svp

Merci d'avance !

Kassie
 Posté le 29/03/2010 à 16:05 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petite astucienne

Bon, en fouillant d'avantage sur le net, j'ai trouvé quelque chose de satisfaisant pour moi.
Je la colle ici, si quelqu'un d'autre en a besoin:

Option Explicit
Sub SupprimerLignes()
Dim i As Long
For i = Range("C2").End(xlDown).Row To 2 Step -1
If Cells(i, 1).Interior.ColorIndex = xlNone Then
Rows(i).Delete
End If
Next
End Sub

Merci à tous ceux qui m'ont aidé dans cette problématique !
Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
245,43 €Ecran 31.5 pouces incurvé HP X32c (FHD, VA, 165 Hz, 1 ms, FreeSync) à 245,43 €
319 € -23%

Amazon fait une promotion sur l'écran 32 pouces incurvé HP X32c qui passe à 245,43 € au lieu de 319 €. Cet écran dispose d'une dalle VA FHD (1920x1080) incurvée (courbure 1500R) à 165 Hz, est compatible FreeSync et offre un temps de réponse de 1ms. Il possède des entrées DP et HDMI. Il possède des fonctions d'anti scintillement et anti lumière bleue. Il est réglable en hauteur et en inclinaison. 


Voir l'offre
75,05 €SSD SanDisk Plus 1 To à 75,05 € € livré
90 € -17%

Amazon Allemagne propose actuellement le SSD SanDisk Plus 1 To à 70,49 € (avec la TVA ajustée). Comptez 4,56 € pour la livraison en France soit un total de 75,05 € livré. Une bonne affaire pour ce SSD très fiable et performant qui offre des débits de 530 Mo/s en lecture et 445 Mo/s en écriture. Il est garanti 3 ans. On le trouve ailleurs à partir de 90 €. 

Vous pouvez utiliser votre compte Amazon France sur Amazon DE et il n'y a pas de douane.


Voir l'offre
189,99 €Mini PC NiPoGi (Celeron J4125, 12 Go RAM, SSD 128 Go, baie 2.5 pouces, WiFi, BT, Win11) à 189,99 €
220 € -14%

Amazon fait une promotion sur le mini PC NiPoGi qui passe à 189,99 € grâce à un coupon à activer sur la page du produit. On le trouve habituellement à 220 €. Ce mini PC possède un processeur Intel Celeron J4125 à 4 coeurs (2 GHz / boost à 2.7 GHz) avec un chip graphique intégré, 12 Go de RAM, un SSD 128 Go (extensible via un emplacement 2.5 pouces libre), le WiFi, le bluetooth et tourne sous Windows 11 Pro.

Il possède 2 ports HDMI, 1 port VGA, 1 port Ethernet Gigabit, 1 lecteur de carte MicroSDXC, 2 ports USB 2.0 et 2 ports USB 3.0. 


Voir l'offre
619,90 €Carte graphique Zotac Gaming GeForce RTX 3070 Twin Edge LHR - 8 Go à 619,90 €
699,90 € -11%

RueDuCommerce fait une belle promotion sur la carte graphique Zotac Gaming GeForce RTX 3070 Twin Edge LHR qui passe à 619,90 € au lieu de 699,90 €.


Voir l'offre

Sujets relatifs
[Excel 2007] Macro : Sélection d'un tableau selon sa longueur variable
Format de cellule personnalisée - Excel 2007
excel 2007 classement selon nombre de points
Suppression de titres dans liste excel 2007.
Imposer format dans cellule excel 2007
menu contextuel excel 2007 ne fonctionne plus
Excel 2007 Copier/Coller d’une feuille à l’autre Dans un même classeur.
EXCEL 2007-stdole32.tlb-WIN7 SP1x64
Formule excel 2007
Excel 2007, insertion ligne vierge en automatique
Plus de sujets relatifs à Excel 2007 - Suppression selon format
 > Tous les forums > Forum Bureautique