× Aidez la recherche contre le COVID-19 avec votre ordi ! Rejoignez l'équipe PC Astuces Folding@home
 > Tous les forums > Forum Bureautique
 [VBA+suppression conditionnelle de ligne]Sujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
Magnan
  Posté le 14/06/2015 @ 12:06 
Aller en bas de la page 
Astucien

Bonjour,

J'ai un fichier XL et je voudrais supprimer les lignes ou le n° contact (Colonne B) est vide.

A la main, j'ai commencé, et j'en suis péniblement à la 600ième ligne sur plus de 6.000. Pas gagné.

Mais je ne suis pas assez bon en VBA pour créer une macro.

Si vous pouviez m'aider.

Merci d'avance.

Publicité
ferrand
 Posté le 14/06/2015 à 13:01 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonjour,

Sous réserve d'infos éventuellement manquantes...

version 1

Sub EliminerContactsVides1()
Dim n%, k%, m%
n = Cells(Rows.Count, 1).End(xlUp).Row
k = Cells(1, Columns.Count).End(xlToLeft).Column
Range(Cells(2, 1), Cells(n, k)).Sort key1:=Cells(2, 2), order1:=xlAscending, Header:=xlNo
m = Cells(Rows.Count, 2).End(xlUp).Row + 1
Range(Cells(m, 2), Cells(n, 2)).EntireRow.Delete
End Sub

On trie sur la colonne B, ce qui positionne les vides à la fin, et on supprime d'un coup la portion concernée.

Faisable manuellement de façon assez rapide.

ferrand
 Posté le 14/06/2015 à 13:04 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

version 2

Sub EliminerContactsVides2()
Dim n%, k%, m%
n = Cells(Rows.Count, 1).End(xlUp).Row
k = Cells(1, Columns.Count).End(xlToLeft).Column + 1
For m = 2 To n
Cells(m, k).Value = m - 1
Next m
Range(Cells(2, 1), Cells(n, k)).Sort key1:=Cells(2, 2), order1:=xlAscending, Header:=xlNo
m = Cells(Rows.Count, 2).End(xlUp).Row + 1
Range(Cells(m, 2), Cells(n, 2)).EntireRow.Delete
Range(Cells(2, 1), Cells(m - 1, k)).Sort key1:=Cells(2, k), order1:=xlAscending, Header:=xlNo
Columns(k).Delete
End Sub

Même chose, mais on rétablit l'ordre initial après suppression. Pour cela introduction d'une colonne de numéros d'ordre que l'on supprime en fin.

Magnan
 Posté le 14/06/2015 à 16:12 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

Bonsoir,

Merci pour ces macros.

Je n'avais pas pensé à l'affichage des cellules vides de la colonne B puis leur suppression.

Enfantin.

Encore merci Ferrand.

A+

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour poster des messages. Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !


Les bons plans du moment PC Astuces

Tous les Bons Plans
135,88 €Mini PC Acute Angle AA-B4 (Celeron N3450, 8Go RAM, 64Go+SSD 128Go) à 135,88 €
Valable jusqu'au 12 Août

Gearbest fait une promotion sur l'ordinateur Acute Angle AA - B4 qui passe à 135,88 € au lieu de 180 €. Ce mini PC au design atypique et au corps en bois, intègre un processeur Intel Celeron N3450 (4 coeurs de 1,1 à 2,2 GHz), 8 Go de RAM, un espace de stockage de 64 Go EMMC ainsi qu'un SSD de 128 Go. Il possède également le WiFi5, le Bluetooth 5.0, une prise Ethernet Gigabit, 3 ports USB 3.0, une sortie HDMI. L'ordinateur est livré avec une prise électrique européenne. Il est accompagné de Windows 10 Familial. Avec ce PC, vous pourrez réaliser sans soucis toutes vos tâches courantes : internet, bureautique, multimédia.

Ce marchand sérieux se trouvant en Chine, la livraison peut prendre une quinzaine de jours. Comptez une dizaine d'euros pour la livraison en France et l'assurance pour le transport. Vous pouvez payer par carte bancaire ou par Paypal (conseillé pour bénéficier de la garantie Paypal).


> Voir l'offre
51,99 €SSD Silicon Power A55 512 Go à 51,99 €
Valable jusqu'au 14 Août

Amazon fait une promotion sur le SSD Silicon Power A55 512 Go qui passe à 51,99 € livré gratuitement. Ce SSD à mémoire TLC possède un cache SLC et offre des taux de transfert de 550 Mo/s en lecture et 450 Mo/s en écriture. 


> Voir l'offre
14,99 €Hub Aukey USB C 6 en 1 (USB 3.0, HDMI 4K, lecteur SD et MicroSD) à 14,99 €
Valable jusqu'au 14 Août

Amazon fait une promotion sur le Hub Aukey USB C 6 en 1 qui passe à 14,99 €. Ce Hub à brancher sur un port USB C vous permettra d'ajouter 3 ports USB 3.0, un lecteur de cartes mémoire SD et MicroSD ainsi qu'un port HDMI 4K à votre ordinateur portable ou votre smartphone.


> Voir l'offre

Sujets relatifs
Suppression de l ligne créée par la saisie de 3 tirets + ENTER
Macro excel Suppression de ligne
SUPPRESSION DE LIGNE AVEC UN MOT
SUPPRESSION DE LIGNE D'APRES UN MOT
SUPPRESSION DE LIGNE PLUS RAPIDE
excel recuperation d'une info suppression ligne
Quel agenda en ligne choisir
copier ligne si cellule vide
Document modifiable en ligne
recherche la ligne et passe a la suivante
Plus de sujets relatifs à [VBA+suppression conditionnelle de ligne]
 > Tous les forums > Forum Bureautique