Cache 1 ligne si 1 celulle vide

lamho27

XLDnaute Occasionnel
bonsoir le forum ,
je voudrais cacher 1 ligne si dans 1 ligne il y a 1 celulle vide ( ex : dans mon fichier , si A8:A44 vide , lignes 8:44 caches
merci
 

Pièces jointes

  • Rendement_N°.xls
    37 KB · Affichages: 63
Dernière édition:

Mouchty85

XLDnaute Occasionnel
Re : Cache 1 ligne si 1 celulle vide

Salut,
tu peu essayer de procéder avec le code ci dessous. j'ai pas regarder ton fichier mais tu pouras l'adapter.
Il y a surement lieux comme procédure mais celle-ci fonctionne

Bonne soirée

Code :

If Range("A1").Cells(1, 1).Value = "" Then 'Si la Cellule A1 a pour valeur "" (soit vide") alors
Rows("9:9").Select 'Selection de la ligne 9
Selection.EntireRow.Hidden = True 'Cacher la ligne
Else 'Sinon
End If 'Fin de la fonction SI
 

Staple1600

XLDnaute Barbatruc
Re : Cache 1 ligne si 1 celulle vide

Re


Le code VBA de mon précédent message fonctionne
(je l'ai testé avant de le poster ;) )

EDITION:
Code:
Sub masque()
[COLOR=Green]'masque les cellules vide dans la plage de cellules A1:A44[/COLOR]
Range("A1:A44").SpecialCells(xlCellTypeBlanks).EntireRow.Hidden = True
End Sub
Code:
Sub demasque()
[COLOR=Green]'démasque les cellules vide dans la plage de cellules A1:A44[/COLOR]
Range("A1:A44").SpecialCells(xlCellTypeBlanks).EntireRow.Hidden = False
End Sub
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : Cache 1 ligne si 1 celulle vide

Re

Et comme ça?
Code:
Sub masque()
Dim i As Long
[COLOR=Green] 'masque les cellules vide dans la plage de cellules A8:A44[/COLOR]
For i = 44 To 8 Step -1
If IsEmpty(Cells(i, 1)) Or Cells(i, 1) = 0 Then
Cells(i, 1).EntireRow.Hidden = True
End If
Next i
End Sub
 
Dernière édition:

Lii

XLDnaute Impliqué
Re : Cache 1 ligne si 1 celulle vide

Bonjour,

J'avais regardé ton fichier et prévu ta demande.

Oubli : c'est le changement de mois ou d'année qui provoque le réajustement. Le 0 a été remplacé par "" dans certaines formules.

Remarque : avec tes cellules fusionnées, tes lignes à 0, tes lignes et colonnes cachées, tes formats conditionnels ... tu compliques vraiment les choses.
Je te joins aussi une présentation simplifiée.
 

Pièces jointes

  • Rendement_N°.zip
    15 KB · Affichages: 38
  • CacheVide.zip
    13.8 KB · Affichages: 50
Dernière édition:

lamho27

XLDnaute Occasionnel
Re : Cache 1 ligne si 1 celulle vide

bonjour le forum et Lii
si plusieur lignes cachées , comment on va ajourter dans code suivant ( ex: ( ligne 8 to 44 ), ( ligne 56 to 93 ) , ( ligne 103 to 140 ) merci
Private Sub Worksheet_Change(ByVal Target As Range)
Dim I As Byte
If Target.Count > 1 Or Target.Address = "$F$3" And Target.Address = "$EG$3" Then Exit Sub
Application.ScreenUpdating = False
For I = 8 To 44
Cells(I, 1).EntireRow.Hidden = False
If Cells(I, 1).Value = "" Then Cells(I, 1).EntireRow.Hidden = True
Next I
Application.ScreenUpdating = True
End Sub
 

Lii

XLDnaute Impliqué
Re : Cache 1 ligne si 1 celulle vide

Bonsoir,

N'ayant pas tous les éléments, je te propose ce
Code:
Dim Debut As Byte, Fin As Byte
Private Sub Worksheet_Change(ByVal Target As Range)
Dim I As Byte
    If Target.Count > 1 Or Target.Address = "$D$3" And Target.Address = "$E$3" Then Exit Sub
  Application.ScreenUpdating = False
    Debut = 8: Fin = 44: Call Cache(Debut, Fin)
    Debut = 56: Fin = 93: Call Cache(Debut, Fin)
    Debut = 103: Fin = 140: Call Cache(Debut, Fin)
  Application.ScreenUpdating = True
End Sub
Sub Cache(Debut, Fin)
    For I = Debut To Fin
      Cells(I, 1).EntireRow.Hidden = False
      If Cells(I, 2).Value = "" Then Cells(I, 1).EntireRow.Hidden = True
    Next I
End Sub
Les lignes sont cachées au changement de D3 ou E3 !
 

Lii

XLDnaute Impliqué
Re : Cache 1 ligne si 1 celulle vide

Re,

Je t'avais dit que tes colonnes, lignes cachées, réduites à 0 ... ne pouvaient amener que des complications !

Mon code fonctionne à condition de recopier correctement les plages de calendrier et ce sur toutes les feuilles !

Dernier envoi car je ne perdrais plus de temps à tout afficher, corriger ...
 

Pièces jointes

  • CacheSi.zip
    28.1 KB · Affichages: 52

Discussions similaires

Statistiques des forums

Discussions
312 801
Messages
2 092 244
Membres
105 312
dernier inscrit
DD07