XL 2016 Macro excel ne fonctionne plus

Erakmur

XLDnaute Occasionnel
Bonjour,
Suite à l'échange de mon ordinateur de travail, passage d'un windows 7 pro à windows 10 mais conservation d'Excel 2016 32 bits, plus aucune macro ne fonctionne. Je vous ai mis les 2 captures de l'erreur qui apparait. Puisque aucune macro ne fonctionne, il doit s'agir d'un outils qu'il manque à windows ou excel. Pouvez vous m'aider ?
Exemple avec celle si:

Sub Macro1()
Const MesFeuilles = "BFC;BPL;CENTRE;EST;IDF NORD;IDF SUD;MONTPELLIER;M-PYRENEES;NORD;NORMANDIE;PACA;SDO;SUD EST;BFC DI;BPL DI;CENTRE DI;EST DI;IDF NORD DI;IDF SUD DI;MONTPELLIER DI;M-PYRENEES DI;NORD DI;NORMANDIE DI;PACA DI;SDO DI;SUD EST DI"
Const MesDI = "BFC DI;BPL DI;CENTRE DI;EST DI;IDF NORD DI;IDF SUD DI;MONTPELLIER DI;M-PYRENEES DI;NORD DI;NORMANDIE DI;PACA DI;SDO DI;SUD EST DI"
Const MesBP = "BFC;BPL;CENTRE;EST;IDF NORD;IDF SUD;MONTPELLIER;M-PYRENEES;NORD;NORMANDIE;PACA;SDO;SUD EST"
Dim xfeuil, t0 As Double

'Heure départ
t0 = Timer
Application.ScreenUpdating = False
' passage en calcul sur ordre
Application.Calculation = xlCalculationManual
'si error, on saute à FIN: pour remette le calcul en automatique
On Error GoTo FIN

' Rafraichir tableau croisé dynamique
Sheets("BP par DR et par CF").PivotTables("Tableau croisé dynamique4").PivotCache.Refresh
Sheets("BP par DR et par Site").PivotTables("Tableau croisé dynamique1").PivotCache.Refresh

' on recalcule le classeur
Calculate

' Décocher vide

For Each xfeuil In Split(MesFeuilles, ";")
Sheets(xfeuil).Range("$A$8:$P$44").AutoFilter Field:=2
Sheets(xfeuil & ".").Range("$A$8:$P$44").AutoFilter Field:=2
Next xfeuil

' Filtre du plus petit au plus grand au % de réalisation
For Each xfeuil In Split(MesBP, ";")
With Sheets(xfeuil)
.AutoFilter.Sort.SortFields.Clear
.AutoFilter.Sort.SortFields.Add Key:=Range("M8:M44"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With .AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End With

With Sheets(xfeuil & ".")
.AutoFilter.Sort.SortFields.Clear
.AutoFilter.Sort.SortFields.Add Key:=Range("M8:M500"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With .AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End With
Next xfeuil

For Each xfeuil In Split(MesDI, ";")
With Sheets(xfeuil)
.AutoFilter.Sort.SortFields.Clear
.AutoFilter.Sort.SortFields.Add Key:=Range("L8:L44"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With .AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End With

With Sheets(xfeuil & ".")
.AutoFilter.Sort.SortFields.Clear
.AutoFilter.Sort.SortFields.Add Key:=Range("L8:L500"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With .AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End With
Next xfeuil

' Décocher vide
For Each xfeuil In Split(MesFeuilles, ";")
Sheets(xfeuil).Range("$A$8:$P$44").AutoFilter Field:=2, Criteria1:="<>"
Sheets(xfeuil & ".").Range("$A$8:$P$500").AutoFilter Field:=2, Criteria1:="<>"
Next xfeuil

FIN:
If Err.Number > 0 Then MsgBox "Erreur n° " & Err.Number & vbLf & Err.Description
Application.Calculation = xlCalculationAutomatic
Application.Goto Sheets("Validation").Range("a1"), True
MsgBox Format(Timer - t0, "0.0 \ sec.")
End Sub
 

Pièces jointes

  • Capture.PNG
    Capture.PNG
    8.5 KB · Affichages: 6
  • bug.PNG
    bug.PNG
    26.6 KB · Affichages: 7

Erakmur

XLDnaute Occasionnel
En fait, même l'enregistreur de macro ne fonctionne plus. Voici ce qu'il me met comme macro pour copier coller:
Sub Macro1()
'
' Macro1 Macro
'

'
Range("A1").Select
.
Range("C1").Select
.
End Sub
 
Dernière édition:

Membres actuellement en ligne

Statistiques des forums

Discussions
288 581
Messages
1 893 168
Membres
169 777
dernier inscrit
Bazilecr
Haut Bas