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.
 

Fichiers joints

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?
 

Banzai64

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

Bonsoir Staple1600

Bravo
En plus en partant de ta macro, on peut déterminer la première ligne/colonne masqué
Chapeau
 

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.
 

Fichiers joints

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,

MAGNIFIQUE ! Merci :), Staple1600.

Staple1600

Voici un début

Je te laisse compléter pour les colonnes;
Dois aller à la douche puis au taf
Je vais tenter... de compléter...

Bonne journée :D !
 

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 +
:)
 

James007

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

Re,

Pour votre aide, je vous remercie, Banzai64, Staple1600 et James007 !
Merci pour tes remerciements ... c'est sympa ...!!!

A très vite sur le Forum ...
:)
 

Staple1600

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

Bonsoir à tous

Merci à James 007 d'avoir pris le relai ;)

00: ton problème est résolu alors?
 

DoubleZero

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

Bonsoir à tous

Merci à James 007 d'avoir pris le relai ;)

00: ton problème est résolu alors?
Bonsoir - Bonjour, le fil, le Forum,

Merci, Staple1600, de t’inquiéter de mon sort.

Tout allait bien, mais il s’avère que me voici, présentement, face à une bizarrerie…

Dans le fichier joint, certaines colonnes ne sont pas prises en compte ! Et pourquoi donc ??? Mystère !

Quant à ma « recette » d’assemblage des macros offertes par James007 et toi-même : le résultat ne donne rien d’appétissant… Mais, la mixture venant de moi, cela n'a rien d'étonnant :p !

Grand merci pour le(s) remède(s) et bon dodo !
 

Fichiers joints

Staple1600

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

Bonjour 00, le fil, le forum

Chez moi quand on clique sur le bouton vert, cela fonctionne non ??
Je viens de tester


Ci-dessous un petit caprice de ma part (pour le fun vbaistique)
Code:
Sub ab()
Dim c As Range
For Each c In ActiveSheet.UsedRange
    If c.EntireRow.Hidden = True Then
       bordure c.Offset(-1), 9
    End If
    If c.EntireColumn.Hidden = True Then
       bordure c.Offset(, 1), 7
    End If
Next c

End Sub
Code:
Function bordure(r As Range, tb&)
With r.Borders(tb): .LineStyle = 1: .Weight = 4: .ColorIndex = 3: End With
End Function
 

DoubleZero

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

Bonjour à toutes et à tous,

@ Banzai64, Staple1600 et James007,

Vous ne pouvez me voir mais je peux vous certifier que je suis rouge de honte !

Je "disais" ce matin, à 1h13 :

Dans le fichier joint, certaines colonnes ne sont pas prises en compte ! Et pourquoi donc ??? Mystère !
Quelle ânerie :rolleyes:. Il est évident que les colonnes et lignes non masquées ne peuvent être repérées !

A nouveau, je vous remercie tous trois INFINIMENT pour votre aide et cours vite me cacher :eek:...
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas