Re : Macro Afficher/masquer des colonnes
Merci BCP sergio, c'est exactement ce qu'il me fallait...
Reste simplement un élément
j'aimerais pouvoir élargir le tableau ... et ainsi rajouter une ville si besoin est ... voir Deux ou trois villes...
Le souci, c'est que bien qu'ayant modifié le code comme suit, rien n'y fait... les villes sont bien prise en compte, mais les années correspondant aux villes supplémentaires ne sont elles, pas prises en compte ...
revoici le code modifié ...je ne comprends pas ! 😕
Option Explicit
' Lister les feuilles
' VériTi Juillet 2004
' Ce lien n'existe plus
Const Mask = "Masquée"
Private Sub MasqueAffiche(OnOff As Boolean)
Dim C As Integer
With ListboxF
For C = 1 To 6
'mDF : ici on se sert de l'index du listbox pour déterminer le numéro de la colonne à traiter
ActiveSheet.Range("B2:IV2")((.ListIndex + 1) + ((C - 1) * 6)).EntireColumn.Hidden = Not OnOff
.List(.ListIndex, 1) = IIf(OnOff, "", Mask)
Next C
End With
ListBoxF_Click
ActiveWindow.ScrollColumn = 1
End Sub
Private Sub BoutonOnOff_Click()
MasqueAffiche ListboxF.Value <> ""
End Sub
Private Sub BoutQuitte_Click()
'VeriTi
Unload Me
End Sub
Private Sub ListBoxF_Click()
BoutonOnOff.Caption = IIf(ListboxF.Value = "", "Masquer", "Afficher")
End Sub
Private Sub ListBoxF_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
BoutonOnOff_Click
End Sub
Private Sub UserForm_Initialize()
Dim cell As Range
With ListboxF
.Clear
For Each cell In ActiveSheet.Range("B2:ax2")
If cell.Value = "" Then GoTo Fin
' If cell.Value < cell.Offset(0, -1).Value Then GoTo Fin
.AddItem (cell.Value)
.List(.ListCount - 1, 1) = IIf(cell.EntireColumn.Hidden, Mask, "")
Next cell
Fin:
'En prédéterminant le "BoundColumn" à 2, on obtiendra la valeur de la 2ème colonne
'du ListBox sur un simple appel de ListBox.value (ce qui remplace avantageusement
'les "ListBoxF.list(LisboxF.listIndex,1)" dans le code)
.BoundColumn = 2
End With
End Sub
une autre question aussi, si je souhaitais remplacer le tri des villes par un tri en colonne sur les "sexe" ? 😕 😱
merci tu m'aides vraiment bcp ... et après c promis j 'arrete 😉
si tu as une idée ...merci encore