Afficher les colonnes non vides d'une ligne

Bonjour,

j'ai besoin d'aide, je veux trouver une fonction qui permet d'afficher les colonnes non vides d'une ligne en particulier.

tableau ci-joint

merci pour les réponses.

Bonjour,

désolé je ne comprend pas...

@ bientôt

LouReeD

Salut lip,

Salut LouReeD,

moi, pas trop non plus, LouReeD, alors, j'imagine...

  • clic en [C:C] sur une référence, cache les colonnes de cette référence vides de valeurs ;
  • clic sur RESET pour réafficher toutes les colonnes.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'
Application.ScreenUpdating = False
If Not Intersect(Target, Range("C:C")) Is Nothing Then
    If CInt(Target) >= 1000 Then
        For x = 7 To Columns.Count
            If Range(Chr(64 + x) & 1).Value = "" Then
                [B1] = x - 1
                Exit For
            End If
            Columns(Chr(64 + x)).Hidden = False
        Next
        For x = Cells(1, Columns.Count).End(xlToLeft).Column To 7 Step -1
            Columns(Chr(64 + x)).Hidden = IIf(Cells(Target.Row, x) = "", True, False)
        Next
    End If
End If
'
If Not Intersect(Target, Range("A1")) Is Nothing Then
    For x = 7 To [B1]
        Columns(Chr(64 + x)).Hidden = False
    Next
End If
Application.ScreenUpdating = True
'
End Sub

A+

A tester...

7hidden.xlsm (18.98 Ko)

bonjour,

désolé de mettre mal exprimé,

merci curulis57 c'est tout à fait ce que je recherche, en fait j'ai un tableau de 400 colonnes et je veux savoir dans quel bon est sorti ou rentré le matériel.

Merci de votre aide

a+

Salut,

un peu amélioré.

Code valable pour un nombre indéterminé de colonnes.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'
Application.ScreenUpdating = False
'
If Not Intersect(Target, Range("C:C")) Is Nothing And IsNumeric(Target) Then
    Call Reset
    For x = Cells(1, Columns.Count).End(xlToLeft).Column To 7 Step -1
        If Cells(Target.Row, x) = "" Then Columns(Chr(64 + x)).Hidden = True
    Next
End If
'
If Not Intersect(Target, Range("A1")) Is Nothing Then Call Reset
'
Application.ScreenUpdating = True
'
End Sub

Public Sub Reset()
'
For x = 7 To Columns.Count
    If Range(Chr(64 + x) & 1).Value = "" Then Exit For
    Columns(Chr(64 + x)).Hidden = False
Next
'
End Sub

A+

4hidden.xlsm (18.93 Ko)

cool

merci

quand je copie le code il me met un message d'erreur sur le "range"

je mets le classeur pour voir

Rechercher des sujets similaires à "afficher colonnes vides ligne"