Bonjour à vous tous,
J'ai créer un programme avec feuilles de données et UserForm
Dans un tableau présent dans une feuille "Liste Prestataires" est présent 2 colonnes : A "Nom" et B "Prénom"
Dans mon UF est présent (entre autres...):
- 1 TextBoxRecherchePrestataire
- 2 CommandButtonTrier
-3 ListBox1
le TextBoxRecherchePrestataire sert à ajouter, supprimer, rechercher un prestataire dans ma feuille "Liste Prestataires"
le CommandButtonTrier sert à trier par ordre alphabétique les prestataires suivant leur nom cela fonctionne parfaitement dans la feuille "Liste Prestataires" MAIS ma ListBox1 n'affiche pas les modifications, il faut que j'enregistre et quitte le programme et ensuite le réouvrir pour que ma ListBox1 affiche correctement les données.
Est-ce qu'une âme charitable pourrait me donner la solution pour que cette ListBox1, après avoir cliquer sur CommandButtonTrier affiche les données trier comme la feuille de calcul "Liste Prestataires"?
Code du
Private Sub CommandButtonTrier_Click()
' ********* Tri par ordre alphabétique les prestatires********
Call reset_all_controls
Sheets("Liste Prestataires").Select
Range("A15").Select
ActiveWorkbook.Worksheets("Liste Prestataires").ListObjects("Tableau1").Sort. _
SortFields.Clear
ActiveWorkbook.Worksheets("Liste Prestataires").ListObjects("Tableau1").Sort. _
SortFields.Add2 Key:=Range("Tableau1[NOM]"), SortOn:=xlSortOnValues, Order _
:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Liste Prestataires").ListObjects("Tableau1"). _
Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Sheets("Salaires").Select
Range("A15").Select
ActiveWorkbook.Worksheets("Salaires").ListObjects("Tableau4").Sort. _
SortFields.Clear
ActiveWorkbook.Worksheets("Salaires").ListObjects("Tableau4").Sort. _
SortFields.Add2 Key:=Range("Tableau4[NOM]"), SortOn:=xlSortOnValues, Order _
:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Salaires").ListObjects("Tableau4"). _
Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub
Je vous en souhaite bonne réception.
très cordialement
J'ai créer un programme avec feuilles de données et UserForm
Dans un tableau présent dans une feuille "Liste Prestataires" est présent 2 colonnes : A "Nom" et B "Prénom"
Dans mon UF est présent (entre autres...):
- 1 TextBoxRecherchePrestataire
- 2 CommandButtonTrier
-3 ListBox1
le TextBoxRecherchePrestataire sert à ajouter, supprimer, rechercher un prestataire dans ma feuille "Liste Prestataires"
le CommandButtonTrier sert à trier par ordre alphabétique les prestataires suivant leur nom cela fonctionne parfaitement dans la feuille "Liste Prestataires" MAIS ma ListBox1 n'affiche pas les modifications, il faut que j'enregistre et quitte le programme et ensuite le réouvrir pour que ma ListBox1 affiche correctement les données.
Est-ce qu'une âme charitable pourrait me donner la solution pour que cette ListBox1, après avoir cliquer sur CommandButtonTrier affiche les données trier comme la feuille de calcul "Liste Prestataires"?
Code du
Private Sub CommandButtonTrier_Click()
' ********* Tri par ordre alphabétique les prestatires********
Call reset_all_controls
Sheets("Liste Prestataires").Select
Range("A15").Select
ActiveWorkbook.Worksheets("Liste Prestataires").ListObjects("Tableau1").Sort. _
SortFields.Clear
ActiveWorkbook.Worksheets("Liste Prestataires").ListObjects("Tableau1").Sort. _
SortFields.Add2 Key:=Range("Tableau1[NOM]"), SortOn:=xlSortOnValues, Order _
:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Liste Prestataires").ListObjects("Tableau1"). _
Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Sheets("Salaires").Select
Range("A15").Select
ActiveWorkbook.Worksheets("Salaires").ListObjects("Tableau4").Sort. _
SortFields.Clear
ActiveWorkbook.Worksheets("Salaires").ListObjects("Tableau4").Sort. _
SortFields.Add2 Key:=Range("Tableau4[NOM]"), SortOn:=xlSortOnValues, Order _
:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Salaires").ListObjects("Tableau4"). _
Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub
Je vous en souhaite bonne réception.
très cordialement