XL 2010 Effacer certaines cellules sous conditions

jeanba

XLDnaute Occasionnel
Bonjour la Forum,

Ceci est la suite d'une vieille discussion sur ce forum en 2008.
J'essaye d'adapter le code qui avait alors été proposé par tototiti2008, mais je n'y parviens pas.

Je vous joins le fichier
Merci par avance.

Jeanba
 

Pièces jointes

  • Effacer sous conditions.xlsm
    19.5 KB · Affichages: 27

job75

XLDnaute Barbatruc
Re,

Si maintenant on veut traiter toutes les cellules vides de la 1ère colonne :
Code:
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
With Me.UsedRange
  .Columns(1).Insert xlToRight 'colonne auxiliaire
  .Columns(0) = "=1/LEN(RC[1])"
  On Error Resume Next 'si aucune cellule vide
  .Columns(0).SpecialCells(xlCellTypeFormulas, 16).EntireRow = ""
  .Columns(0).Delete xlToLeft
End With
End Sub
Fichier joint.

A+
 

Pièces jointes

  • Effacer sous conditions(1).xlsm
    25.2 KB · Affichages: 19

jeanba

XLDnaute Occasionnel
Bonjour job75 et merci de ton astuce.
Cependant, ce code n'efface que la ligne à partir de laquelle une cellule est vide en colonne A.
En fait, j'ai oublié de préciser que je voudrais que s'effacent toutes les cellules à partir de celle-là jusqu'à D13.
Comment le spécifier ça s'il te plaît.

Voici le code que j'avais bidouiller, mais trop lourd:
VB:
For Each CEL In Graph.Range("A2:A13")
    If CEL.Value Like "" Or CEL.Value Like "0" Then
        Range(CEL.Address).Offset(0, 1).ClearContents
        Range(CEL.Address).Offset(0, 2).ClearContents
        Range(CEL.Address).Offset(0, 3).ClearContents
        Range(CEL.Address).Offset(0, 4).ClearContents
    End If
Next CEL

Merci
Jeanba
 

job75

XLDnaute Barbatruc
Re,

Pourquoi s'arrêter à D13 ?

Ce code efface les colonnes A: D jusqu'à la dernière ligne de la feuille :
Code:
Private Sub CommandButton1_Click()
Range([A:A].Find("", , xlValues), Range("D" & Rows.Count)) = ""
End Sub
Surtout ne pas faire de boucle !!!

A+
 

job75

XLDnaute Barbatruc
Bonjour jeanba, le forum,

Un code plus général :
Code:
Private Sub CommandButton1_Click()
Range(UsedRange.Columns(1).Find("", , xlValues), Rows(Rows.Count)) = ""
End Sub
Bonne journée.
 

Pièces jointes

  • Effacer sous conditions(2).xlsm
    25.9 KB · Affichages: 21

Discussions similaires

Statistiques des forums

Discussions
312 113
Messages
2 085 427
Membres
102 889
dernier inscrit
monsef JABBOUR