1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| Private Sub UserForm_Initialize()
With Sheets("Base de données") 'dans la feuille Base de données
ListBox1.ColumnCount = 10 'nombre de colonnes la colonne 9 contient le numéro de ligne
ListBox1.ColumnWidths = "0;65;40;45;45;35;225;95;55;55" 'largeur des colonnes
Derlig = .Range("A" & .Rows.Count).End(xlUp).Row 'Défini la place de celulle et la derniere ligne d'une colonne
Me.ListBox1.MultiSelect = fmMultiSelectSingle
Dim I As Byte
For I = 1 To Derlig 'pour I de 1 à la dernière ligne
'ajoute les données dans la listBox1
If .Range("A" & I).EntireRow.Hidden = False Then 'si la cellule est visible alors faire les étapes suivante sinon end if
ListBox1.AddItem .Range("A" & I).Value
ListBox1.List(ListBox1.ListCount - 1, 1) = .Range("A" & I).Offset(0, 2) 'ajoute le type en colonne 1
ListBox1.List(ListBox1.ListCount - 1, 2) = .Range("A" & I).Offset(0, 3) 'ajoute le Materiel en colonne 2
ListBox1.List(ListBox1.ListCount - 1, 3) = .Range("A" & I).Offset(0, 4) 'ajoute le N° Organe en colonne 3
ListBox1.List(ListBox1.ListCount - 1, 4) = .Range("A" & I).Offset(0, 5) 'ajoute la tache en colonne 4
ListBox1.List(ListBox1.ListCount - 1, 5) = .Range("A" & I).Offset(0, 6) 'ajoute la Version en colonne 5
ListBox1.List(ListBox1.ListCount - 1, 6) = .Range("A" & I).Offset(0, 7) 'ajoute le Observation en colonne 6
ListBox1.List(ListBox1.ListCount - 1, 7) = .Range("A" & I).Offset(0, 8) 'ajoute le 1 ére Arrivé en colonne 7
ListBox1.List(ListBox1.ListCount - 1, 8) = .Range("A" & I).Offset(0, 30) 'ajoute le Validée le en colonne 8
ListBox1.List(ListBox1.ListCount - 1, 9) = .Range("A" & I).Offset(0, 31) 'ajoute le Départ en colonne 9
End If
Next I 'passer au next I
.ShowAllData 'Montrer toutes les données masquées
End With 'fin du with
'trie par ordre alphabétique
ActiveWorkbook.Worksheets("Base de données").AutoFilter.Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Base de données").AutoFilter.Sort.SortFields.Add _
Key:=Range("A1:A1048576"), SortOn:=xlSortOnValues, Order:=xlAscending, _
DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Base de données").AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub |
Partager