IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Filtre par élément d'une colonne et sauvegarde fichiers au format xlsx


Sujet :

Macros et VBA Excel

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Analyste d'exploitation
    Inscrit en
    Novembre 2015
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2015
    Messages : 23
    Par défaut Filtre par élément d'une colonne et sauvegarde fichiers au format xlsx
    Bonjour tous,

    Je suis débutant en VBA et je voudrais réaliser une macro qui va filtrer une colonne et extraire les fichier relatifs à chaque critère du filtre.
    Par la même occasion, la macro devra sauvegarder dans un répertoire (et dans le même dossier) les fichiers (extraits) par nom de chaque filtre.
    Cf. tableau ci-dessous : colonne à filtrer ==> PAYS D'ORIGINE"
    Filtre par =======> Pays (France, Danemark, Espagne)

    Résultat attendu :
    3 fichiers au nom de chaque pays (filtre), sauvegardés dans le même répertoire (dans le même dossier)

    J'ai tenté un enregistrement de la macro, pour ensuite la modifier.
    Voici le résultat obtenu :

    DATE D'ARRIVÉ MATÉRIEL PAYS D'ORIGINE QUANTITÉ
    21/05/2014 Ordinateur France 12
    30/04/2010 Logiciel Danemark 7
    01/06/2008 Logiciel Danemark 8
    06/03/2007 Périphérique Espagne 17
    31/07/2015 Ordinateur Espagne 1
    01/02/2016 Logiciel France 9
    02/03/2011 Logiciel France 21
    03/04/2008 Périphérique France 19
    04/05/2009 Ordinateur Danemark 16


    Voici mon code erroné :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    Sub Première_macro()
    ' Première_macro Macro
    ' Filtre par pays et enregistrements des fichiers par filtre
    '
        Sheets("SOURCE").Select 'Feuille servant de source d'extraction
        Rows("1:1").Select
        Selection.AutoFilter
        ActiveSheet.Range("$A$1:$D$10").AutoFilter field:=3, Criteria1:=Array("France", "Danemark3", "Espagne")
        Cells.Select
        Selection.Copy
        Sheets("Extraction").Select
        Range("A1").Select
        Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
        Sheets("SOURCE").Select
        Application.CutCopyMode = False
        ActiveSheet.ShowAllData
        Selection.AutoFilter
        Range("E1").Select
        Sheets("Extraction").Select
        Range("E1").Select
     
    '   suppression de la feuille "SOURCE "pour ne conserver que la feuille "Extraction"
        Sheets("SOURCE").Select 
        Application.DisplayAlerts = False
        ActiveWindow.SelectedSheets.Delete                      'supprimer cette feuille "SOURCE"
        Application.DisplayAlerts = True 
     
    '   Definir les noms des fichiers par filtre et le repertoire de sauvegarde de ces fichiers
        Dim strDate As String, extension As String
        Dim chemin As String, nomfichier As String
        strDate = Format(Now + 0 / 24, "dd_mm_yyyy hh""h""mm")
        extension = ".xlsx"
        nomfichier = "_" & strDate & extension
        chemin = "C:\Users\monrepertoire" & nomfichier
        ActiveSheet("Extraction").SaveAs Filename:=chemin
        Close
        'on revient au fichier source
        wbk.Activate
    End Sub
    Pourriez-vous m'aidez à trouver le bon code (ou corriger celui-ci)
    Merci d'avance pour votre aide

    Cordialement
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. [LibreOffice][Tableur] Filtre et tri d'une colonne avec macro
    Par nicklebreton dans le forum OpenOffice & LibreOffice
    Réponses: 9
    Dernier message: 09/04/2018, 10h26
  2. [XL-2010] Trier par ordre chronologique une colonne d'un TCD contenant des dates en VBA
    Par boostiik dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 29/04/2017, 19h17
  3. [Toutes versions] Copier le résultat d'une cellule validé par bouton dans une colonne d'une autre feuille - VBA
    Par heliogabale06 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/02/2017, 15h37
  4. parcourir les éléments d'une colonne dans un fichier csv
    Par zeinab ali dans le forum Général Python
    Réponses: 9
    Dernier message: 05/12/2016, 22h10
  5. Macro VBA Excel : Comparaison des deux 1ères colonnes de 2 fichiers Excel
    Par techneric dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 10/01/2007, 10h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo