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 Btn_Extraction_Type_de_ménage_Click()
'Déclaration des variables.
Dim Ma_liste_menage As Range
Dim Liste_region As Range
Dim NbLignes As Long
Dim LigneActive As Long
'Affectation des variables
Set Liste_des_Regions = Données.Range("A2", Données.Range("A1").End(xlDown))
NbLignes = Liste_des_Regions.Rows.Count
LigneActive = 0
'On insere une nouvelle feuille.
Sheets.Add
'L'idée est de nommer la feuille selon la région sélectionnée.
'If MaRegion.Offset(1, 6).Value = Me.ComboBox1_Régions.Value Then
'On extrait la ligne de titre
Données.Range("A1").EntireRow.Copy ActiveCell
Range("A2").Select
'On boucle chaque région se trouvant dans la liste.
For Each Ma_liste_menage In Liste_des_Regions '= nom de la feuille liste des régions colonne 2
'On se décale d'une ligne vers le bas
LigneActive = LigneActive + 1
'On recherche la région qui à été saisie dans la liste déroulante
If Ma_liste_menage.Offset(0, 9).Value = Me.ComboBox1_Type_ménage_1.Value Then 'Valeur 9 = démarre l'extraction après la colonne 9
'Si la région est trouvée alors on récupére l'enregistrement du client.
Ma_liste_menage.EntireRow.Copy ActiveCell
ActiveCell.Offset(1, 0).Select
End If
If Ma_liste_menage.Offset(0, 9).Value = Me.ComboBox2_Type_ménage_2.Value Then 'Valeur 9 = démarre l'extraction après la colonne 9
'Si la région est trouvée alors on récupére l'enregistrement du client.
Ma_liste_menage.EntireRow.Copy ActiveCell
ActiveCell.Offset(1, 0).Select
End If
'On paramèttre la barre de progression
Me.ProgressBar1.Value = (LigneActive / NbLignes) * 100
Next Ma_liste_menage
'Mise en forme des Extractions
'On va ajuster la largeur des colonnes des tableaux
Range("A1").Select
ActiveCell.CurrentRegion.EntireColumn.AutoFit
Unload Me 'On ferme le formulaire
'INFORMATION: Row source = Liste_des_Régions Charge la liste des régions de la combobox
End Sub |
Partager