Bonjour,
Vous m'aviez déjà aidé pour masquer des lignes sous VBA, mais je ne parvient pas à modifier cette formules pour masquer des colonnes, si quelq'un a une idée...
Voici la formule :
Select Case Me.ComboBox2
Case "COMPTE RENDU"
Worksheets("Page garde").Range("1:19").EntireRow.Hidden = False
Worksheets("page garde").Range("20:34").EntireRow.Hidden = True
Je voudrais la même chose (Enfin presque la même chose) Je voudrais que la colonne ce masque si en ligne 23="" et cela pour les colonnes de A à X par exemple.
Ci-joint le code : sur la ligne 82 c'est =SOMME(L5:L81) par Exp
Sub Effacecolonne()
'For Each cel In Columns("L:AG").SpecialCells(xlCellTypeBlanks)
'If cel.Row = 82 And cel.Value = 0 Then cel.EntireColumn.Hidden = True
'Next
'Dim cel As Range
'For Each cel In Range("L82:AG82").SpecialCells(xlCellTypeBlanks)
'cel.EntireColumn.Hidden = True
'Next
Dim i As Byte
For i = 12 To 35
If IsEmpty(Cells(23, i)) Then Cells(23, i).EntireColumn.Hidden = True
Next i
End Sub
ce code fonctionne parfaitement pour ce que tu as demandé...
Maintenant, le résultat dans ta cellule provenant d'une formule, ta cellule n'est donc pas vide : .SpecialCells(xlCellTypeBlanks)
il faudrait faire une boucle dans la ligne 82
For Each cel In Range("A82:X82")
If cel.value = 0 Then cel.EntireColumn.Hidden = True
'Next
re-,
fais un petit test :
dans ton tableau, fais Outils/Macro/Enregistrer une nouvelle macro
puis Edition/Atteindre/Cellules....
choisis Vides puis OK
stoppe l'enregistreur de Macro, regarde le code
Donc tu as sélectionné les cellules ""Vides""