Supprimer les cellules d'une plage

Philippepilou

XLDnaute Nouveau
Bonjour à vous et merci d'avance pour vos réponses!

Voilà, je vous expose mon soucis, encore débutant en VBA pour Excel, je souhaiterai un peu d'aide pour le problème suivant:

j'ai, sur ma feuille, un tableau dans la zone (H8:p11), ce tableau contient des chiffres entiers et certaines des cellules de ce tableau contiennent la valeur "0".

Je souhaiterai supprimer de ce tableau, toutes les cellules contenant "0", en clair, qu'il n'y ai plus rien dans les cellules concernées.

C'est possible?

Merci beaucoup pour vos réponses.
 

DoubleZero

XLDnaute Barbatruc
Re : Supprimer les cellules d'une plage

Bonjour, Philippepilou, le Forum

Un essai avec ce code, à placer dans un module :

Code:
Option Explicit
Sub Zéro_zéro()
'Adapter le nom de l'onglet
    Sheets("Feuil1").Range("h8:p11").Replace What:="0", Replacement:="", LookAt:=xlWhole, _
        SearchOrder:=xlByRows, MatchCase:=True, SearchFormat:=False, _
        ReplaceFormat:=False
End Sub

A bientôt :)
 

Philippepilou

XLDnaute Nouveau
Re : Supprimer les cellules d'une plage

Merci DoubleZero pour cette réponse rapide!

Mais.... ça ne marche pas! Est-ce parce que j'ai oublier de préciser que ces cellules contenant "0", contiennent en fait une simple formule du genre "Somme des valeurs" de 2 autre cellule (hors tableau). (Ex: =K9+K4)?

Merci tout de même!
 

DoubleZero

XLDnaute Barbatruc
Re : Supprimer les cellules d'une plage

Re-bonjour, bonjour, laetitia90 :D,

Une autre façon :

Code:
Option Explicit
Sub Zéro_zéro()
'Adapter le nom de l'onglet
With Sheets("Feuil1").Range("h8:p11").Cells.SpecialCells(xlCellTypeFormulas, 23)
    If .Value = 0 Then .Value = ""
End With
End Sub

A bientôt :)
 

Philippepilou

XLDnaute Nouveau
Re : Supprimer les cellules d'une plage

Merci à vous laetitia90 et DoubleZero, vos réponses ont fait mouche, ça marche du tonnerre!

Encore une petite sollicitation dans le même thème et je me calme, promis!

j'ai, sur ma feuille, un 1er tableau dans la zone (H2:p5), ce tableau contient des chiffres entiers et des cellules vides

Sous ce tableau, un 2ème tableau de même taille et forme dans la zone (H8:p11)

Je souhaiterai que pour chacune des cellules vides du tableau 1, les cellules correspondantes du tableau 2 soient vides aussi.

(En clair si J4 (tableau 1) est vide alors la cellule J10 (Tableau 2) devient vide.) (on note que juste l'ordonnée des cellules est +6 d'un tableau à l'autre, si ça peu aider).

Merci d'avance.
 

DoubleZero

XLDnaute Barbatruc
Re : Supprimer les cellules d'une plage

Bonjour, le Fil, le Forum,

Ci-après, un code à tester... en attendant mieux :

VB:
Option Explicit
Sub Cellules_vides_reporter_de_A_vers_B()
    Dim c As Range
    Application.ScreenUpdating = False
    Sheets.Add.Name = "00"
    'Feuil1 => adapter
    Sheets("Feuil1").Range("H2:P11").Copy Destination:=Sheets("00").Range("H2")
    Range("h14:p17").FormulaR1C1 = "=IF(R[-12]C<>"""",R[-6]C,"""")"
    Sheets("Feuil1").Range("H8:P11").Value = Sheets("00").Range("H14:p17").Value
    Application.DisplayAlerts = False
    Sheets("00").Delete
    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
End Sub

... si ça peu aider...

Et si la macro ne donnait pas le résultat attendu, un fichier exemple, dépourvu de donnée confidentielle, pourrait aider.

A bientôt :)
 

Pierrot93

XLDnaute Barbatruc
Re : Supprimer les cellules d'une plage

Bonjour Philippepilou, 00:):), Laetitia:):)

une autre approche, enfin si j'aibien compris....

Code:
Option Explicit
Sub test()
Dim c As Range
For Each c In Range("H2:P5")
    If IsEmpty(c) Then c.Offset(6) = Empty
Next c
End Sub
bon après midi
@+
 

Philippepilou

XLDnaute Nouveau
Re : Supprimer les cellules d'une plage

Wouaouh! Respect! Messieurs DoubleZero et Pierrot93!

Ces 2 routines fonctionnent parfaitement, je n'en souhaite pas plus!

Merci pour vos réponses rapides et appropriées, je suis un homme heureux! :)

Passez un bon WE et merci encore!!!
 

Discussions similaires

Statistiques des forums

Discussions
312 196
Messages
2 086 099
Membres
103 116
dernier inscrit
kutobi87