Copier les données filtrées dans un nouveau classeur avec Excel VBA

Il arrive souvent que lorsque vous travaillez avec des données obtenues à l’aide de la fonction Filtre automatique, vous souhaitiez les transférer dans un classeur séparé. Bien sûr, vous pouvez les copier, ouvrir un nouveau classeur, coller les données, puis les formater correctement de manière à ce qu’elles tiennent dans les colonnes. Toutefois, lorsque ces opérations sont effectuées plus souvent, il convient de disposer d’une macro qui accélérera l’ensemble du processus.
Comment ca marche?
La macro obtient la plage dans laquelle le filtre automatique fonctionne, puis ouvre le nouveau classeur et y colle les données.

Sub DonneesFiltrees ()
'Étape 1: Vérifiez si le filtre automatique est utilisé - sinon, terminez l'opération

If ActiveSheet.AutoFilterMode = False Then
Exit Sub
End If
'Étape 2: copiez les données filtrées dans le nouveau classeur
ActiveSheet.AutoFilter.Range.Copy
Workbooks.Add.Worksheets(1).Paste
'Étape 3: Ajustez la largeur des colonnes
Cells.EntireColumn.AutoFit
End Sub

 


1. Dans la première étape, la propriété AutoFil terMode a été utilisée pour vérifier si la fonction de filtrage automatique était appliquée à la feuille de calcul. Sinon, toute la procédure est terminée.
2. Chaque objet Filtre automatique possède une propriété Range. Il retourne des informations
sur les lignes auxquelles le filtrage a été appliqué. S4 est simultanément les lignes qui sont visibles dans la plage de données filtrée. Dans la deuxième étape, la méthode Copy est utilisée pour copier ces lignes, qui seront ensuite collées dans un nouveau classeur. Workbooks.Add instructions ont été utilisées à cette fin. Feuilles de travail (L). Cette commande permet à Excel de coller les données dans la première feuille du nouveau classeur.
3. À l’étape trois, la largeur des colonnes est ajustée aux données qui y sont placées.
Comment utiliser la macro?
Pour implémenter cette macro, vous pouvez copier et coller son code en mode standard. À cette fin:
1. Utilisez les touches Alt + F11 pour activer Visual Basic Editor.
2. Dans la fenêtre Projet, cliquez avec le bouton droit sur le nom du projet ou de la feuille de calcul.
3. Sélectionnez Insérer / Module.
4. Tapez ou collez le code.

S’abonner
Notifier de
0 Commentaires
Inline Feedbacks
Voir tous les commentaires

Initiation à Excel

Fonctions Excel

Excel VBA

Macros VBA Utiles

Plus d'outils

Sur Facebook

Sur YouTube

0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x