Masquer colonne en VBA

jerome pb excel

XLDnaute Nouveau
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

Merci à tous
 

WDAndCo

XLDnaute Impliqué
Re : Masquer colonne en VBA

Bonsoir le Forum

Les codes ne marche pas !

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
 

Cousinhub

XLDnaute Barbatruc
Re : Masquer colonne en VBA

Bonsoir WD,

Je voudrais que la colonne ce masque si en ligne 23=""

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
 

Cousinhub

XLDnaute Barbatruc
Re : Masquer colonne en VBA

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""
 

Riri16

XLDnaute Nouveau
Bonjour,

Bien que le sujet soit ancien, je me permet de remonter ce post car j'aurais besoin de masquer des colonnes à l'ouverture du fichier.

Ces colonnes doivent se masquer suivant une valeur dans la première case de cette colonne ("1")

Exemple : les cases A1 à N1 =1, ces colonnes doivent se masquer, les suivantes ne devant pas bouger.

J'ai essayé de mixer les solutions ci-dessus mais sans succès

j'utilise les colonnes A à NA

Merci de votre aide
 

Cousinhub

XLDnaute Barbatruc
Bonjour,
Ouah, c'est effectivement du déterrage, signe positif d'une recherche de ta part. Bravo
Un essai :
VB:
Sub masq_col()
Dim Cel As Range
For Each Cel In Range("A1:NA1")
    Cel.EntireColumn.Hidden = Cel.Value = 1
Next Cel
End Sub
Bonne journée
 

Discussions similaires

Statistiques des forums

Discussions
311 725
Messages
2 081 940
Membres
101 845
dernier inscrit
annesof