Macro incomplète avec raccourci clavier

neilu

XLDnaute Nouveau
Bonjour,

J'ai créé une macro toute simple avec l'éditeur de macro. Celle-ci ouvre un fichier au format txt, le met sous forme de colonne puis modifie l'ordre de certaines colonnes.

Ce qui est étrange, c'est que si j'éxécute lamacro via le raccourcis clavier, le fichier s'ouvre puis plus rien, même pas un message d'erreur. Mais si je l'exécute via le bouton lecture de l'éditeur Visual basic, la macro s'exécute jusqu'au bout (ouverture du fichier et ordre des colonnes).

Je ne vois pas où est le soucis.
Ci-joint l'export de la macro (raccourcis : Ctrl + Shift + G) et le fichier texte (lien à modifier dans la macro)

J'en profite pour poser une deuxième question. Comment ajouter, modifier ou annuler un raccourci clavier via l'éditeur visual basic ? Mes macro sont sur le réseaux et n'apparaissent donc pas dans la fenêtre macro du fichier Excel. je ne peux donc pas accéder au raccourci clavier par le bouton option.

Merci d'avance et bonne fin de journée.
 

Pièces jointes

  • ZPPLST05.zip
    1 KB · Affichages: 50
  • ZPPLST05.zip
    1 KB · Affichages: 50
  • ZPPLST05.zip
    1 KB · Affichages: 50

Fred0o

XLDnaute Barbatruc
Re : Macro incomplète avec raccourci clavier

Bonsoir neilu,

Contrairement à toi, la macro fonctionne aussi bien avec le raccourci qu'en la lançant directement. Je ne peux donc pas t'aider sur ce problème.

Pour affecter un raccourci clavier par macro, il te faut utiliser cette instruction :
VB:
Application.MacroOptions Macro:="Macro1", Description:="", ShortcutKey:="G"

A+
 

Gareth

XLDnaute Impliqué
Re : Macro incomplète avec raccourci clavier

Bonsoir,

Probleme non reproduit sous Excel 2010.
Quelle est ta version ?
Peux tu essayer le code ci-dessous ?


Code:
Sub Macro1()
 Workbooks.OpenText Filename:="C:\Users\jug1rma\Desktop\ZPPLST05_PACD.txt", _
    Origin:=xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
    xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, _
    Comma:=False, Space:=False, Other:=False
With Workbooks("ZPPLST05_PACD.txt").Sheets(1)
    .Columns("F:F").Cut
    .Columns("B:B").Insert Shift:=xlToRight
    .Columns("E:E").Cut
    .Columns("C:C").Insert Shift:=xlToRight
    .Columns("E:E").Cut
    .Columns("D:D").Insert Shift:=xlToRight
    .Columns("H:I").Cut
    .Columns("E:E").Insert Shift:=xlToRight
    .Columns("L:M").Cut
    .Columns("G:G").Insert Shift:=xlToRight
    .Columns("O:O").Cut
    .Columns("I:I").Insert Shift:=xlToRight
    .Columns("S:S").Cut
    .Columns("J:J").Insert Shift:=xlToRight
    .Columns("W:X").Cut
    .Columns("K:K").Insert Shift:=xlToRight
    .Columns("W:W").Cut
    .Columns("M:M").Insert Shift:=xlToRight
    .Columns("T:U").Cut
    .Columns("O:O").Insert Shift:=xlToRight
    .Columns("AA:AA").Cut
    .Columns("Q:Q").Insert Shift:=xlToRight
    .Columns("S:S").Cut
    .Columns("R:R").Insert Shift:=xlToRight
    .Columns("W:W").Cut
    .Columns("V:V").Insert Shift:=xlToRight
    .Columns("X:X").Cut
    .Columns("W:W").Insert Shift:=xlToRight
    .Columns("Y:AA").Delete Shift:=xlToLeft
End With
End Sub
 

Gareth

XLDnaute Impliqué
Re : Macro incomplète avec raccourci clavier

Re,

A priori pas de rapport avec le probleme, mais ci-dessous une version utilisant une boucle.
Code:
Sub Macro1()
 Workbooks.OpenText Filename:="C:\Users\jug1rma\Desktop\ZPPLST05_PACD.txt", _
    Origin:=xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
    xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, _
    Comma:=False, Space:=False, Other:=False
With Workbooks("ZPPLST05_PACD.txt").Sheets(1)
    MaSource = Array("F:F", "E:E", "E:E", "H:I", "L:M", "O:O", "S:S", "W:X", "W:W", "T:U", "AA:AA", "S:S", "W:W", "X:X")
    MaDest = Array("B:B", "C:C", "D:D", "E:E", "G:G", "I:I", "J:J", "K:K", "M:M", "O:O", "Q:Q", "R:R", "V:V", "W:W")
    For i = 0 To UBound(MaSource)
        .Columns(MaSource(i)).Cut
        .Columns(MaDest(i)).Insert Shift:=xlToRight
    Next
    .Columns("Y:AA").Delete Shift:=xlToLeft
End With
End Sub
 

neilu

XLDnaute Nouveau
Re : Macro incomplète avec raccourci clavier

Bonjour,

Je ne prends connaissance de vos réponses que maintenant.

Fred0o, je suis sous Excel 2007.
Gareth, j'ai essaé tes deux propositions mais rien ne change. La macro ouvre le fichier texte et rien d'autre. Pas de modification de l'ordre des colonnes. J'ai beau chercher, je ne comprends pas...

Please, Help :(
 

Fred0o

XLDnaute Barbatruc
Re : Macro incomplète avec raccourci clavier

Bonjour neilu,

Pas de problème avec la version. As-tu essayé ma proposition ?

Si cela ne fonctionne pas, il te faudrait nous joindre ton fichier sans données confidentielles pour que nous fassions des essais.

A+
 

neilu

XLDnaute Nouveau
Re : Macro incomplète avec raccourci clavier

Fred0o, je ne sais pas ou copier ton instruction. En début de Macro ?

Dans tous les cas, pour la Macro concernée, j'ai déjà affecté un raccourci qui est Ctrl + Shift + G.

Je ne peux malheureusement pas fournir un autre fichier car il ne contient que des données confidentielles. C'est pour cette raison que j'ai supprimé toutes les lignes sauf la ligne d'en-tête.

Pour être sûr que sur ton PC la Macro s'éxécute jusqu'au bout, je te joins le modèle qui doit être obtenu après exécution de la Macro. En fait, je constate qu'aucune autre action ne s'éxécute une fois le fichier texte ouvert, sans aucun message d'erreur. Mais si je clique sur le bouton lecture de la fenêtre Visual Basic, c'est tout bon. Peut-être est-ce le raccourcis clavier mal paramétré... (dans ce cas je reviens sur ma première question ci-dessus).

Je joins donc le module contenant la Macro, le fameux fichier avec seulement la ligne d'en-tête et le fichier final à obtenir (ordre collones modifiées).

Merci beaucoup pour ton implication en tous cas.
 

Pièces jointes

  • ZPPLST05.zip
    8 KB · Affichages: 39
  • ZPPLST05.zip
    8 KB · Affichages: 35
  • ZPPLST05.zip
    8 KB · Affichages: 39

neilu

XLDnaute Nouveau
Re : Macro incomplète avec raccourci clavier

Bonjour Gareth,

Je viens d'essayer en mode pas à pas. Avec ma macro initiale, tout fonctionne bien ligne à ligne. Mais si j'utilise la version simplifiée de Fred0o, il y a un message d'erreur (out of range) dès la "couper" de la première colonne. Pourtant elle s'éxécute bien en mode normal.

Mais j'ai découvert qu'après exécution de la macro via le raccourci, le bouton Design mode est activé, alors qu'il ne l'est pas sur d'autres macros. Ne sachant pas comment corriger ce problème j'ai tout simplement recréé un module puis copier les instructions dedans et miracle, tout fonctionne;). Tout ceci reste un mystère.

Par contre, je suis toujours intéressé par connaître l'endroit où copier l'instruction de raccourci clavier lorsque la macro est en Add-in.

Merci encore
 

Statistiques des forums

Discussions
314 646
Messages
2 111 528
Membres
111 190
dernier inscrit
clmtj