Macro VBA Help

[Fermé]
Signaler
Messages postés
1
Date d'inscription
jeudi 24 juillet 2014
Statut
Membre
Dernière intervention
24 juillet 2014
-
Messages postés
319
Date d'inscription
mercredi 13 janvier 2010
Statut
Membre
Dernière intervention
27 mars 2020
-
Bonjour,

Je travaille sur une macro (que je n'ai pas creee) pour pouvoir avec un raccourci CTRL SHIFT W l'appliquer a n'importe quel fichier excel que j'utilise.

Suite a des changements d'emplacement de dossiers, il se trouve que la macro ne fonctionne plus. J'ai alors copie colle le code vba dans un nouveau fichier excel mais lorsque je lance la macro j'ai des erreurs de syntaxe.

Ma deuxieme question est une fois que les erreurs de syntaxe sont corriges, a quel endroit et avec quelle extension le fichier doit etre place pour pouvoir executer la macro dans tous les fichiers excel.

Voici le code VBA :

Attribute VB_Name = "ONCURAData"
Sub ONCURAData()

Attribute ONCURAData.VB_ProcData.VB_Invoke_Func ="W\n14"

' ONCURAData Macro
'
' Keyboard Shortcut: Ctrl+Shift+W
'
    ActiveWindow.ScrollColumn = 2
    ActiveWindow.ScrollColumn = 3
    ActiveWindow.ScrollColumn = 4
    ActiveWindow.ScrollColumn = 5
    Columns("H:H").Select
    Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
    Columns("G:G").Select
    Selection.TextToColumns Destination:=Range("G1"), DataType:=xlFixedWidth, _
        FieldInfo:=Array(Array(0, 1), Array(19, 1)), TrailingMinusNumbers:=True
    ActiveWindow.ScrollColumn = 4
    ActiveWindow.ScrollColumn = 3
    ActiveWindow.ScrollColumn = 2
    ActiveWindow.ScrollColumn = 1
    Rows("2:2").Select
    Range(Selection, Selection.End(xlDown)).Select
    Range(Selection, Selection.End(xlDown)).Select
    ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range("G2:G200") _
        , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Sheet1").Sort
        .SetRange Range("A2:S200")
        .Header = xlGuess
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    Cells.Select
    Selection.Subtotal GroupBy:=7, Function:=xlSum, TotalList:=Array(10, 12) _
        , Replace:=True, PageBreaks:=False, SummaryBelowData:=True
    Range("A1").Select
    ActiveSheet.Outline.ShowLevels RowLevels:=2
    ActiveSheet.Outline.ShowLevels RowLevels:=1
    ActiveSheet.Outline.ShowLevels RowLevels:=2
    ActiveWindow.ScrollColumn = 2
    ActiveWindow.ScrollColumn = 3
    ActiveWindow.ScrollColumn = 4
    ActiveWindow.ScrollColumn = 5
    ActiveWindow.ScrollColumn = 6
    ActiveWindow.ScrollColumn = 7
    Range("H:I,K:K").Select
    Range("K1").Activate
    Selection.EntireColumn.Hidden = True
    ActiveWindow.ScrollColumn = 6
    ActiveWindow.ScrollColumn = 5
End Sub



Merci bcp

1 réponse

Messages postés
319
Date d'inscription
mercredi 13 janvier 2010
Statut
Membre
Dernière intervention
27 mars 2020
14
Bonjour

Tu as essayée de faire fonctionner ta macro au pas à pas (touche F8)?
La première ligne et la 3 éme indiquent une erreur de syntaxe.
Mettre un ' devant.

Tu verras aussi quelque ligne inutile

cordialement