Colonnes choisies à masquer ou afficher
Le
pat

Bonsoir à tous,
j'ai un petit problème que je n'arrive pas à résoudre seul, c'est
pourquoi j'ai pensé que vous pourriez m'aider.
J'ai donc une feuille en Excel 2003 contenant 200 colonnes , chaque
colonne représente un article avec en ligne 1 son nom et en ligne 2 le
nom du fichier source dont sont issus les autres paramètres de l'article
résumé dans les cellules en dessous.
Mon pb est le suivant :
je voudrais choisir dans une liste le nom du fichier source et ne faire
apparaître que les colonnes des articles issus du même fichier source
pour ne pas avoir les 200 colonnes ouvertes mais seulement une douzaine
où je pourrait avoir toutes les variantes d'un article par exemple.
Je précise que les colonnes d'un même fichier source ne sont pas cote à
cote.
Je sait créer une liste mais ne garder que les colonnes intéressantes je
ne sais pas le faire.
S'il faut créer une ligne au dessus du nom pour y mettre un indicateur
invisible du style 0 ou 1 de la même couleur que le fond, c'est
possible, pas d'opposition, de même que pour associer un n° à un fichier
source (J'ai déjà réfléchi à des possibilités mais j'ai du mal à
concrétiser)
Merci pour votre aide
j'ai un petit problème que je n'arrive pas à résoudre seul, c'est
pourquoi j'ai pensé que vous pourriez m'aider.
J'ai donc une feuille en Excel 2003 contenant 200 colonnes , chaque
colonne représente un article avec en ligne 1 son nom et en ligne 2 le
nom du fichier source dont sont issus les autres paramètres de l'article
résumé dans les cellules en dessous.
Mon pb est le suivant :
je voudrais choisir dans une liste le nom du fichier source et ne faire
apparaître que les colonnes des articles issus du même fichier source
pour ne pas avoir les 200 colonnes ouvertes mais seulement une douzaine
où je pourrait avoir toutes les variantes d'un article par exemple.
Je précise que les colonnes d'un même fichier source ne sont pas cote à
cote.
Je sait créer une liste mais ne garder que les colonnes intéressantes je
ne sais pas le faire.
S'il faut créer une ligne au dessus du nom pour y mettre un indicateur
invisible du style 0 ou 1 de la même couleur que le fond, c'est
possible, pas d'opposition, de même que pour associer un n° à un fichier
source (J'ai déjà réfléchi à des possibilités mais j'ai du mal à
concrétiser)
Merci pour votre aide
Avec tes données commençant en colonne B, mets dans un module standard
:
Sub test()
Columns(1).Insert
For Each c In Range([b2], Cells(2, Columns.Count).End(xlToLeft))
If c <> "" Then
ctr = ctr + 1
Cells(ctr, 1) = c
End If
Next c
Columns(1).RemoveDuplicates Columns:=1, Header:=xlNo
With [B1].Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop,
Operator:= _
xlBetween, Formula1:="=" & Range([A1], Cells(Rows.Count,
1).End(xlUp)).Address
.IgnoreBlank = True
.InCellDropdown = True
.ShowInput = True
.ShowError = True
End With
Columns(1).Hidden = True
End Sub
pour construire la liste de validation.
Mets ensuite le code suivant dans le module de la feuille (la liste de
validation est en B1) :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$B$1" Then Exit Sub
For i = Cells(2, Columns.Count).End(xlToLeft).Column To 3 Step -1
If Cells(2, i) <> Target Then Columns(i).Hidden = True
Next i
End Sub
Daniel
pat a écrit
le pb c'est que les colonnes non retenues disparaissent définitivement
je voulais simplement les masquer pour pouvoir faire un autre choix ou
tout afficher ensuite
merci de voir si c'est possible simplement sinon j'abandonne et on se
fera le masquage à la main
Le 10/10/2011 10:14, DanielCo a écrit :
Fais alors un filtre avancé avec l'option "extraction sans doublon". Je
n'ai pas le temps de m'y mettre ce soir. Sers-toi de l'enregistreur de
macros.
Daniel
cela fonctionne avec le filtre
Je te remercie pour la piste
bonne fin de WE
Le 14/10/2011 21:31, DanielCo a écrit :