Macros non utilisables d'Excel 2003 à Excel 2007 ?

  • Initiateur de la discussion Initiateur de la discussion gsans
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

gsans

XLDnaute Nouveau
Bonjour,

Un de mes utilisateurs vient de migrer d'Excel 2000/2003 à Excel 2007, son problème est qu'il ne peut plus utiliser les macros qui avaient été crées sous l'ancienne version d'Excel. Quand il veut exécuter une macro dans un de ses tableau cela lui marque "Impossible d'exécuter la macro xxx. Il est possible qu'elle ne soit pas disponible dans ce classeur ou que toutes les macros soient désactivées".

Dans le centre de confidentialité, j'ai activé les macros automatiquement, mais cela ne change rien au problème.

Comment se fait-il qu'en passant d'une version à l'autre cela bloque les macros ? et comment remédier à ce problème ?

Merci d'avance.
 
Re : Macros non utilisables d'Excel 2003 à Excel 2007 ?

Bon j'ai réussi à activer ces macros... mais j'ai une erreur qui bloque le traitement de la feuille : "erreur d'exécution '1004' : impossible de lire la propriété PivotFields de la classe PivoTable."

savez vous quel est le problème dans le code ?

Je vous met le code (l'erreur est en rouge gras) :

Code:
Sub tableau()
'
' tableau Macro
' Macro enregistrée le 26/08/2005 par mcguilbon
'

'
    ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
        "CalculModulation2!R1C1:R65535C12").CreatePivotTable TableDestination:="", _
        TableName:="Tableau croisé dynamique1"
    ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1)
    ActiveSheet.Cells(3, 1).Select
    ActiveSheet.PivotTables("Tableau croisé dynamique1").SmallGrid = False
    With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("SEMAINE" _
        )
        .Orientation = xlColumnField
        .Position = 1
    End With
    With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields( _
        "MATRICULE")
        .Orientation = xlRowField
        .Position = 1
    End With
    With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("NOM")
        .Orientation = xlRowField
        .Position = 2
    End With
    With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields( _
        "HEURE EFF")
        .Orientation = xlRowField
        .Position = 3
    End With
    With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("THEO")
        .Orientation = xlRowField
        .Position = 4
    End With
    With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("H EFF")
        .Orientation = xlDataField
        .Position = 1
    End With
    With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("ABS")
        .Orientation = xlDataField
        .Position = 2
    End With
    Range("E5").Select
    [B][COLOR="Red"]ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("NB H EFF"). _
        Function = xlSum[/COLOR][/B]
    Range("E6").Select
    ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("NB ABS"). _
        Function = xlSum
    Range("C5").Select
    ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("HEURE EFF"). _
        Subtotals = Array(False, False, False, False, False, False, False, False, False, False, _
        False, False)
    Range("B5").Select
    ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("NOM"). _
        Subtotals = Array(False, False, False, False, False, False, False, False, False, False, _
        False, False)
    Range("A5").Select
    ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("MATRICULE"). _
        Subtotals = Array(False, False, False, False, False, False, False, False, False, False, _
        False, False)
    Range("H9").Select
    ActiveSheet.PivotTables("Tableau croisé dynamique1").RowGrand = False
    Columns("B:B").ColumnWidth = 19.14
    Columns("A:A").ColumnWidth = 6.86
    Columns("D:D").ColumnWidth = 7.14
    Columns("D:D").ColumnWidth = 6
    Columns("C:C").ColumnWidth = 8
    Sheets("Feuil4").Select
    Sheets("Feuil4").Name = "modul"
    Range("F27").Select
End Sub

Merci de votre aide
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour