VBA : Repérer ligne(s) et/ou colonne(s) masquée(s)

DoubleZero

XLDnaute Barbatruc
Bonsoir à toutes et à tous,

Afin de repérer aisément la (les) ligne(s) et/ou colonne(s) potentiellement masquée(s), serait-il possible, s'il vous plaît, d'insérer à la fois un quadrillage et une couleur particuliers ?

Je vous remercie :) pour l'aide qu'il vous sera permis de m'apporter.
 

Pièces jointes

  • 00 Lignes - colonnes masquées.xls
    31.5 KB · Affichages: 137

Banzai64

XLDnaute Accro
Re : VBA : Repérer ligne(s) et/ou colonne(s) masquée(s)

Bonsoir
Mal compris
Tu veux signaler si des lignes/colonnes sont masquées
Pourquoi les masquer alors ?
Si c'est toi qui masques, les lignes/colonnes autour des lignes/colonnes masquées peuvent être d'un style particulier

Bonne soirée
 

DoubleZero

XLDnaute Barbatruc
Re : VBA : Repérer ligne(s) et/ou colonne(s) masquée(s)

Re-bonsoir,

Merci, Banzai64, et pardon si je ne parviens pas à me faire bien comprendre :eek:

Je souhaiterais « simplement » localiser les lignes et colonnes qui pourraient avoir été masquées par moi-même ou toute autre personne.

A titre d’exemple, j’utilise une macro pour déceler les cellules dans lesquelles se trouvent des formules.

J'espère que ma demande est plus explicite :) (???).
 
Dernière édition:

Banzai64

XLDnaute Accro
Re : VBA : Repérer ligne(s) et/ou colonne(s) masquée(s)

Bonsoir
Plus clair pour moi
Je ne sais pas (je n'y crois pas) s'il existe une propriété dans la feuille pour indiquer si des lignes/colonnes sont masquées
Alors il ne reste que la solution de parcourir toutes les lignes/colonnes et de vérifier le Hidden
S'il y a une solution autre, je suis preneur
Bonne soirée
 

Staple1600

XLDnaute Barbatruc
Re : VBA : Repérer ligne(s) et/ou colonne(s) masquée(s)

Bonsoir à tous

00
essaies cette macro sur un classeur vierge
Code:
Sub Macro1()
' Macro enregistrée le 06/02/2011

    Columns("C:C").EntireColumn.Hidden = True
    Rows("3:3").EntireRow.Hidden = True
    Range("A1").SpecialCells(xlCellTypeVisible).Select
End Sub
est-ce le résultat visuel que tu souhaites?
 

DoubleZero

XLDnaute Barbatruc
Re : VBA : Repérer ligne(s) et/ou colonne(s) masquée(s)

Bonjour Banzai64 :), Staple1600 :), le Forum,

Bravo et merci beaucoup, Staple1600, pour l’aide et la macro.

A présent, pour un meilleur confort visuel, serait-il possible, s’il te plaît, d’insérer une bordure de couleur comme dans l’image ci-dessous ?

Merci et bonne journée.
 

Pièces jointes

  • Lignes - colonnes masquées.jpg
    Lignes - colonnes masquées.jpg
    46.8 KB · Affichages: 3 489

Staple1600

XLDnaute Barbatruc
Re : VBA : Repérer ligne(s) et/ou colonne(s) masquée(s)

Bonjour à tous

00
Voici un début
Code:
Sub a()
Dim c As Range
For Each c In ActiveSheet.UsedRange
If c.EntireRow.Hidden = True Then
    With c.Offset(-1).Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
        .Weight = xlThick
        .ColorIndex = 3
    End With
End If
Next c
End Sub
Je te laisse compléter pour les colonnes;
Dois aller à la douche puis au taf ;)
 

DoubleZero

XLDnaute Barbatruc
Re : VBA : Repérer ligne(s) et/ou colonne(s) masquée(s)

Re-bonjour,

Le code ci-après, créé par Staple1600, s'applique aux lignes :

Code:
Sub a()
Dim c As Range
For Each c In ActiveSheet.UsedRange
If c.EntireRow.Hidden = True Then
    With c.Offset(-1).Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
        .Weight = xlThick
        .ColorIndex = 3
    End With
End If
Next c
End Sub

Mon charabia, ci-dessous, tente d'être applicable aux colonnes :

Code:
Sub b()
Dim col As Range
For Each col In ActiveSheet.UsedRange
If col.EntireColumns.Hidden = True Then
    With col.Offset(-1).Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
        .Weight = xlThick
        .ColorIndex = 3
    End With
End If
Next c
End Sub

Je n'ose pas infliger à vos yeux mes multiples tentatives :eek: et vous remercie pour votre aide dans la correction des erreurs :).
 

James007

XLDnaute Barbatruc
Re : VBA : Repérer ligne(s) et/ou colonne(s) masquée(s)

Bonjour DoubleZéro,

Par exemple ...

VB:
Sub b()
Dim c As Range
For Each c In ActiveSheet.UsedRange
If c.EntireColumn.Hidden = True Then
    With c.Offset(0, 1).Borders(xlEdgeLeft)
        .LineStyle = xlContinuous
        .Weight = xlThick
        .ColorIndex = 3
    End With
End If
Next c
End Sub

De la part d'un double zero ... mais avec TVA ... 00 7

A +
:)
 

DoubleZero

XLDnaute Barbatruc
Re : VBA : Repérer ligne(s) et/ou colonne(s) masquée(s)

Re-bonjour,

De la part d'un double zero ... mais avec TVA ... 00 7

Je ne suis pas d'accord ! Ta TVA n'est pas en rapport avec tes compétences :) ! Quand penses-tu relever son taux :D ?

James007, grâce à toi, mes cheveux vont repousser :):):):) !

Aurais-tu, s'il te plaît, encore un peu de temps et de patience pour m'expliquer ce que signifient :

- With col.Offset(-1).Borders(xlEdgeBottom) ;

- With c.Offset(0, 1).Borders(xlEdgeLeft).

Pour votre aide, je vous remercie, Banzai64, Staple1600 et James007 :D !
 

James007

XLDnaute Barbatruc
Re : VBA : Repérer ligne(s) et/ou colonne(s) masquée(s)

Re,

Offset signifie décaler ... et s'utilise ainsi Offset(ligne,colonne)

Du coup pour une cellule donnée, si tu lui ajoutes .offset(1,1)

concrètement tu demandes une ligne de plus et une colonne de plus , par rapport à la position de la cellule ...

Borders signifie bordures, cadre ... et donc ce qui entoure ta cellule ...

Donc tu peux choisir le bord inférieur, supérieur, droit ou gauche ...

Voilou ...

J'espère que cela est assez clair ...

A +
:)
 

Discussions similaires

Réponses
8
Affichages
299
Réponses
4
Affichages
156

Statistiques des forums

Discussions
311 720
Messages
2 081 926
Membres
101 842
dernier inscrit
seb0390