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 :

Trier des données xls via macro VB


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7
    Points : 5
    Points
    5
    Par défaut Trier des données xls via macro VB
    Bonjour,

    J'ai une macro qui manipule des donner entre plusieurs fichiers .xls. En plein milieu de la macro, j'ai besoin d'effectuer un trie sur les données d'un fichier mais la macro bug.
    Ce qui me pose problème, c'est que si je mets sur cette macro un point d'arrêt juste avant ce trie, je la relance, au point d'arrêt j'enregistre en macro mes prochaines actions, je fais ce trie manuelement via xls (données -> trier...) CA MARCHE SANS BUGGER Grrrrrr, je stop l'enregistrement.
    J'ai donc une syntaxe qui est sencé marcher, que j'intègre donc à ma macro mais qui plante malheuresement.

    Voiçi la syntaxe du trie qui plante:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    ActiveWindow.WindowState = xlMaximized
     
             Selection.Sort Key1:=Range("I2"), Order1:=xlAscending, Header:=xlGuess, _
            OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
            DataOption1:=xlSortNormal
        Selection.Sort Key1:=Range("G2"), Order1:=xlAscending, Header:=xlGuess, _
            OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
            DataOption1:=xlSortNormal
     
    ActiveWindow.WindowState = xlMinimized
    Je pense que malgré mes explications que j'ai voulu le plus clair possible, l'envoi de mes fichiers .xls contenant les macro serait plus efficace:

    c8450-kc52-23633-f0700-stl.xls (<-- fichier contenant le bouton qui lance la macro qui bug le pwd est "gravetrifide")
    Fluid_LineNB01.xls (<-- Fichier contenant les données à trier, à laisser fermé mais à placer dans le même répertoire que le fichier "c8450-kc52-23633-f0700-stl.xls")

    D'avance merci pour votre aide,

    Ch0rizz0, qui galère au boulo

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    288
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 288
    Points : 364
    Points
    364
    Par défaut
    Je n'ai pas le temps de vérifier tes fichiers, mais il faudrait peut-être préciser explicitement ce qu'est la sélection et ce qu'est la clé, avec nom de classeur, de feuille etc...

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        Workbooks(2).Sheets(2).UsedRange.Sort Key1:=Workbooks(2).Sheets(2).Range("B1"), Order1:=xlAscending, Header:= _
            xlNo, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
            DataOption1:=xlSortNormal

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Le classeur où je dois effectuer le tri est un classeur qui est créé par la macro du fichier fichier "c8450-kc52-23633-f0700-stl.xls" et qui regroupe sur sa feuille (1) les données de tous les fichiers du type "Fluid_LineNB01.xls"

    Si j'enlève la syntaxe du trie et si je laisse ceci ...:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    ActiveWindow.WindowState = xlMaximized
     
            Range(1, 1).Value = "toto"
             'Selection.Sort Key1:=Range("I2"), Order1:=xlAscending, Header:=xlGuess, _
            'OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
            'DataOption1:=xlSortNormal
        'Selection.Sort Key1:=Range("G2"), Order1:=xlAscending, Header:=xlGuess, _
            'OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
            'DataOption1:=xlSortNormal
     
    ActiveWindow.WindowState = xlMinimized
    ... le fichier en question se mets bien en plein écran, on a bien toto en A1 et le fichier se minimise...

    le tri tout seul marche, au milieu de ma macro il ne marche plus!! je pense que j'ai du faire une erreur dans le reste de ma macro contenu dans le fichier "c8450-kc52-23633-f0700-stl.xls" (pwd: "gravetrifide") mais franchement je vois pas où


    merci de votre aide

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7
    Points : 5
    Points
    5
    Par défaut rectification
    petite rectification:
    Si j'enlève la syntaxe du trie et si je laisse ceci ca marche aussi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    ActiveWindow.WindowState = xlMaximized
     
            Selection.Value = "toto"
             'Selection.Sort Key1:=Range("I2"), Order1:=xlAscending, Header:=xlGuess, _
            'OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
            'DataOption1:=xlSortNormal
        'Selection.Sort Key1:=Range("G2"), Order1:=xlAscending, Header:=xlGuess, _
            'OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
            'DataOption1:=xlSortNormal
     
    ActiveWindow.WindowState = xlMinimized
    ... le fichier en question se mets bien en plein écran, on a bien toto ds les cellules selectionées, puis le fichier se minimise...

    le mieux est de tester mes fichier, de mettre oui pour le tri et de voir ou ca bug.
    Je n'ai que peux d'expérience en VB, merci de votre aide

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7
    Points : 5
    Points
    5
    Par défaut Fichiers sans mot de passe pour test
    Pour que vous puissiez testez mon problème j'ai enlevé le mot de passe de mes fichiers.
    Pour tester, vous devez mettre les deux fichiers .xls dans un même répertoire, ensuite ouvrez le fichier "MacroPbTri.xls" et cliquez sur le bouton "Remplir nomenclature". lors du pop up demandant le tri cliquez sur oui.
    la macro bug ici, alors que j'veux seulement trier les données d'un tableau Excel!!!

    Si quelqu'un peux m'aidez, je lui en serais vraiment reconnaissant car tout le monde autour de moi coince sur ce problème.

    Merci d'avance
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Problème Macro pour trier des données
    Par lmb19 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 15/11/2010, 00h00
  2. [VB6][MYSQL] recuperer des données MySQL via PHP
    Par psykotox dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 18/01/2008, 11h25
  3. trier des données sur excel via les MFC
    Par craryb dans le forum MFC
    Réponses: 1
    Dernier message: 22/03/2007, 14h51
  4. [VA-E] trier des données avec macro VBA
    Par M@XflY dans le forum Macros et VBA Excel
    Réponses: 25
    Dernier message: 13/01/2007, 13h24
  5. Trier des données par ordre d'importance
    Par popoliline dans le forum Access
    Réponses: 19
    Dernier message: 23/08/2006, 19h42

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