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

Access Discussion :

Trier des fichiers par taille par le VB


Sujet :

Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 117
    Points : 44
    Points
    44
    Par défaut
    Bonjour,

    J'aimerais trier des fichiers dans l'ordre décroissant de leur taille et ça par le VB.
    En effet, j'importe des fichiers d'un dossier un par un dans une table d'une base ACCESS et je dois a chaque fois faire un traitement sur cette table.
    J'aimerais donc importer le plus gros fichier en dernier pour réduire les traitements.
    Merci

  2. #2
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    Hello,

    ci-joint un code qui permet de charger une table TblFiles (File, Size) les noms et tailles des fichiers ... il suffit ensuite d'ouvrir un recordset avec un tri sur Size pour lancer tes importations dans l'ordre souhaité.


    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
    Sub LoadFileList(ByVal strFld As String)
    
        ' Utilisation de MS Scripting Runtime
        ' Penser à l'ajouter en référence
        Dim fso As New FileSystemObject
        Dim fil As Scripting.File
        Dim fic As String
        
        ChDrive Left(strFld, 1)
        ChDir strFld
        
        DoCmd.SetWarnings False
        
        ' boucle sur les fichiers d'un répertoire
        fic = Dir("*.*")
        Do While Len(fic) > 0
            Set fil = fso.GetFile(fic)
            DoCmd.RunSQL "INSERT INTO tblFiles VALUES ('" & fil.Name & "', " & fil.Size & ")"
            fic = Dir
        Loop
        
        DoCmd.SetWarnings True
        
        Set fil = Nothing
        Set fso = Nothing
    
    End Sub
    Ne mettez pas "Problème" dans vos titres, par définition derrière toute question se cache un problème
    12 tutoriels Access



  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 117
    Points : 44
    Points
    44
    Par défaut
    Merci jvais tester ça et ça m'a l'air plus qu'intelligent.
    La prochaine fois jréfléchirais pour pas m'en vouloir de trouver une solution aussi simple.
    Merci encore

Discussions similaires

  1. [KSH] Script pour trier des fichier dans des répertoires par mois
    Par MsieurDams dans le forum Shell et commandes GNU
    Réponses: 4
    Dernier message: 08/08/2014, 14h32
  2. Réponses: 8
    Dernier message: 27/10/2011, 16h46
  3. Comment trier des fichiers par types et par tailles?
    Par xXO--Hades--OXx dans le forum Android
    Réponses: 3
    Dernier message: 07/12/2010, 12h09
  4. Trier des fichiers par poids
    Par debutant14 dans le forum Windows XP
    Réponses: 2
    Dernier message: 11/08/2009, 16h10
  5. [PLUGIN]copie direct des fichiers du projet par FTP
    Par wizzer dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 20/04/2006, 15h40

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