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 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
| Private Sub UserForm_Initialize()
With Me.ANALYSEPARLISTE
With .ColumnHeaders
.Clear
.Add , , "SOCIETE", 80
.Add , , "ZONE", 60
.Add , , "TYPE", 70
.Add , , "NOM", 120
.Add , , "PRENOM", 80
.Add , , "FONCTION", 150
.Add , , "TELEPHONE", 70
.Add , , "MAIL", 70
.Add , , "BLABLA", 70
End With
.View = 3 ' type Report
.Gridlines = True ' affichage de lignes
.FullRowSelect = True ' sélection complète de la ligne
.HideColumnHeaders = False ' afficher les en-têtes de colonnes
.LabelEdit = 1 ' ne pas autoriser la saisie
End With
Call LISTING
End Sub
Sub LISTING()
ANALYSEPARLISTE.ListItems.Clear
With Sheets("BASE EMPLOI")
Set Plage = Range("b2:b" & .Range("b65000").End(xlUp).Row)
For Each Cel In Plage
With ANALYSEPARLISTE
.ListItems.Add , , Cel
'Appelle la SOCIETE
.ListItems(.ListItems.Count).ListSubItems.Add , , Cel.Offset(0, 1)
'Appelle la ZONE
.ListItems(.ListItems.Count).ListSubItems.Add , , Cel.Offset(0, 2)
'Appelle le TYPESOCIETE
.ListItems(.ListItems.Count).ListSubItems.Add , , Cel.Offset(0, 4)
'Appelle le NOMCONTACT
.ListItems(.ListItems.Count).ListSubItems.Add , , Cel.Offset(0, 5)
'Appelle le PRENOMCONTACT
.ListItems(.ListItems.Count).ListSubItems.Add , , Cel.Offset(0, 6)
'Appelle la FONCTIONCONTACT
.ListItems(.ListItems.Count).ListSubItems.Add , , Cel.Offset(0, 7)
'Appelle le TELEPHONECONTACT
.ListItems(.ListItems.Count).ListSubItems.Add , , Cel.Offset(0, 8)
'Appelle le MAILCONTACT
.ListItems(.ListItems.Count).ListSubItems.Add , , Cel.Offset(0, 10)
'Appelle le BLABLA
.ListItems(.ListItems.Count).ListSubItems.Add , , Cel.Offset(0, 2)
End With
Next
End With
End Sub
Private Sub ANALYSEPARLISTE_ColumnClick(ByVal ColumnHeader As MSComctlLib.ColumnHeader)
ANALYSEPARLISTE.Sorted = False
ANALYSEPARLISTE.SortKey = ColumnHeader.Index - 1
If ANALYSEPARLISTE.SortOrder = lvwAscending Then
ANALYSEPARLISTE.SortOrder = lvwDescending
Else
ANALYSEPARLISTE.SortOrder = lvwAscending
End If
ANALYSEPARLISTE.Sorted = True
End Sub
Private Sub MODIFICATIONS_Click()
Dim i As Integer, j As Integer
'Boucle sur toutes les lignes
For i = 1 To ANALYSEPARLISTE.ListItems.Count
Cells(i, 1) = ANALYSEPARLISTE.ListItems(i).Text
'Boucle sur les colonnes
For j = 1 To ANALYSEPARLISTE.ColumnHeaders.Count - 1
Cells(i, j + 1) = ANALYSEPARLISTE.ListItems(i).ListSubItems(j).Text
Next j
Next i
End Sub |
Partager