Macro Excel ne fonctionne plus...

Résolu
sanchis81 Messages postés 138 Statut Membre -  
sanchis81 Messages postés 138 Statut Membre -
Bonjour à tous,

j'ai mis en place une macro qui fonctionnait très bien jusqu'à aujourd'hui....

Lorsque je la lance maintenant, voilà ce qui est affiché:

Erreur d'exécution '1004'

Impossible de définir la propriété ColorIndex de la classe Interior


Je n'ai touché à rien.......

Merci pour votre aide
Configuration: Windows XP Internet Explorer 6.0

5 réponses

  1. qmike Messages postés 1599 Date d'inscription   Statut Membre Dernière intervention   594
     
    bonjour
    Posts le contenu de la macro
    0
    1. sanchis81 Messages postés 138 Statut Membre 10
       
      Bonjour qmike,

      ma macro a pour but de couper des données issues d'un tableau d'une feuille Excel et d'aller les copier dans un tableau d'une aute feuille. Une fois ce couper-coller effectué, la couleur de certaines cases du 1er tableau redeviennent "transparentes":

      Sub Vider()
      '
      ' Vider Macro
      ' Macro enregistrée le 24/02/2009 par frederik
      '

      '
      Sheets(2).Unprotect Password:="essai"
      ActiveWindow.SmallScroll Down:=-3
      Range( _
      "A4,A10:A11,B3:C11,E4,E10:E11,F3:G11,I4,I10:I11,J3:K11,M4,M10:M11,N3:O11,Q4,Q10:Q11" _
      ).Select
      Range("Q10").Activate
      ActiveWindow.ScrollColumn = 2
      ActiveWindow.ScrollColumn = 3
      ActiveWindow.ScrollColumn = 4
      ActiveWindow.ScrollColumn = 5
      ActiveWindow.ScrollColumn = 6
      Range( _
      "A4,A10:A11,B3:C11,E4,E10:E11,F3:G11,I4,I10:I11,J3:K11,M4,M10:M11,N3:O11,Q4,Q10:Q11,R3:S11" _
      ).Select
      Range("R3").Activate
      ActiveWindow.ScrollColumn = 5
      ActiveWindow.ScrollColumn = 4
      ActiveWindow.ScrollColumn = 3
      ActiveWindow.ScrollColumn = 2
      ActiveWindow.ScrollColumn = 1
      Range( _
      "A4,A10:A11,B3:C11,E4,E10:E11,F3:G11,I4,I10:I11,J3:K11,M4,M10:M11,N3:O11,Q4,Q10:Q11,R3:S11,A19,A25:A26,B18:C26,E19,E25:E26,F18:G26,I19,I25:I26,J18:K26,M19,M25:M26,N18:O26" _
      ).Select
      Range("N18").Activate
      ActiveWindow.ScrollColumn = 2
      ActiveWindow.ScrollColumn = 3
      ActiveWindow.ScrollColumn = 4
      ActiveWindow.ScrollColumn = 5
      ActiveWindow.ScrollColumn = 6
      Range( _
      "A4,A10:A11,B3:C11,E4,E10:E11,F3:G11,I4,I10:I11,J3:K11,M4,M10:M11,N3:O11,Q4,Q10:Q11,R3:S11,A19,A25:A26,B18:C26,E19,E25:E26,F18:G26,I19,I25:I26,J18:K26,M19,M25:M26,N18:O26,Q19,Q25:Q26,R18:S26" _
      ).Select
      Range("R18").Activate
      Selection.ClearContents
      Range("V5").Select
      ActiveCell.FormulaR1C1 = "FALSE"
      Range("V5").Select
      Selection.AutoFill Destination:=Range("V5:AE5"), Type:=xlFillDefault
      Range("V5:AE5").Select
      Selection.Copy
      Range("V6").Select
      ActiveSheet.Paste
      Range("V7").Select
      ActiveSheet.Paste
      ActiveWindow.ScrollColumn = 13
      ActiveWindow.ScrollColumn = 12
      ActiveWindow.ScrollColumn = 11
      ActiveWindow.ScrollColumn = 10
      ActiveWindow.ScrollColumn = 9
      ActiveWindow.ScrollColumn = 8
      ActiveWindow.ScrollColumn = 7
      ActiveWindow.ScrollColumn = 6
      ActiveWindow.ScrollColumn = 5
      ActiveWindow.ScrollColumn = 4
      ActiveWindow.ScrollColumn = 3
      ActiveWindow.ScrollColumn = 2
      ActiveWindow.ScrollColumn = 1
      ActiveWindow.ScrollColumn = 14
      ActiveWindow.ScrollColumn = 1
      ActiveWindow.SmallScroll Down:=-3

      ActiveWindow.ScrollColumn = 5
      ActiveWindow.ScrollColumn = 4
      ActiveWindow.ScrollColumn = 3
      ActiveWindow.ScrollColumn = 2
      ActiveWindow.ScrollColumn = 1
      ActiveWindow.SmallScroll Down:=-12
      Range("B2:C2,F2:G2,J2:K2,N2:O2").Select
      Range("N2").Activate
      ActiveWindow.ScrollColumn = 2
      ActiveWindow.ScrollColumn = 3
      ActiveWindow.ScrollColumn = 4
      ActiveWindow.ScrollColumn = 5
      ActiveWindow.ScrollColumn = 6
      Range("B2:C2,F2:G2,J2:K2,N2:O2,R2:S2").Select
      Range("R2").Activate
      ActiveWindow.ScrollColumn = 5
      ActiveWindow.ScrollColumn = 4
      ActiveWindow.ScrollColumn = 3
      ActiveWindow.ScrollColumn = 2
      ActiveWindow.ScrollColumn = 1
      Range("B2:C2,F2:G2,J2:K2,N2:O2,R2:S2,B17:C17,F17:G17,J17:K17,N17:O17").Select
      Range("N17").Activate
      ActiveWindow.ScrollColumn = 2
      ActiveWindow.ScrollColumn = 3
      ActiveWindow.ScrollColumn = 4
      ActiveWindow.ScrollColumn = 5
      ActiveWindow.ScrollColumn = 6
      ActiveWindow.ScrollColumn = 7
      Range("B2:C2,F2:G2,J2:K2,N2:O2,R2:S2,B17:C17,F17:G17,J17:K17,N17:O17,R17:S17"). _
      Select
      Range("R17").Activate
      Selection.Interior.ColorIndex = xlNone Arrêt du débogueur
      ActiveWindow.ScrollColumn = 9
      ActiveWindow.ScrollColumn = 8
      ActiveWindow.ScrollColumn = 7
      ActiveWindow.ScrollColumn = 6
      ActiveWindow.ScrollColumn = 5
      ActiveWindow.ScrollColumn = 4
      ActiveWindow.ScrollColumn = 3
      ActiveWindow.ScrollColumn = 2
      ActiveWindow.ScrollColumn = 1
      Sheets(2).Protect Password:="essai", DrawingObjects:=True, Contents:=True, Scenarios:=True
      End Sub

      Merci
      0
  2. sanchis81 Messages postés 138 Statut Membre 10
     
    Bonjour qmike,

    ma macro a pour but de couper des données issues d'un tableau d'une feuille Excel et d'aller les copier dans un tableau d'une aute feuille. Une fois ce couper-coller effectué, la couleur de certaines cases du 1er tableau redeviennent "transparentes":

    Sub Vider()
    '
    ' Vider Macro
    ' Macro enregistrée le 24/02/2009 par frederik
    '

    '
    Sheets(2).Unprotect Password:="essai"
    ActiveWindow.SmallScroll Down:=-3
    Range( _
    "A4,A10:A11,B3:C11,E4,E10:E11,F3:G11,I4,I10:I11,J3:K11,M4,M10:M11,N3:O11,Q4,Q10:Q11" _
    ).Select
    Range("Q10").Activate
    ActiveWindow.ScrollColumn = 2
    ActiveWindow.ScrollColumn = 3
    ActiveWindow.ScrollColumn = 4
    ActiveWindow.ScrollColumn = 5
    ActiveWindow.ScrollColumn = 6
    Range( _
    "A4,A10:A11,B3:C11,E4,E10:E11,F3:G11,I4,I10:I11,J3:K11,M4,M10:M11,N3:O11,Q4,Q10:Q11,R3:S11" _
    ).Select
    Range("R3").Activate
    ActiveWindow.ScrollColumn = 5
    ActiveWindow.ScrollColumn = 4
    ActiveWindow.ScrollColumn = 3
    ActiveWindow.ScrollColumn = 2
    ActiveWindow.ScrollColumn = 1
    Range( _
    "A4,A10:A11,B3:C11,E4,E10:E11,F3:G11,I4,I10:I11,J3:K11,M4,M10:M11,N3:O11,Q4,Q10:Q11,R3:S11,A19,A25:A26,B18:C26,E19,E25:E26,F18:G26,I19,I25:I26,J18:K26,M19,M25:M26,N18:O26" _
    ).Select
    Range("N18").Activate
    ActiveWindow.ScrollColumn = 2
    ActiveWindow.ScrollColumn = 3
    ActiveWindow.ScrollColumn = 4
    ActiveWindow.ScrollColumn = 5
    ActiveWindow.ScrollColumn = 6
    Range( _
    "A4,A10:A11,B3:C11,E4,E10:E11,F3:G11,I4,I10:I11,J3:K11,M4,M10:M11,N3:O11,Q4,Q10:Q11,R3:S11,A19,A25:A26,B18:C26,E19,E25:E26,F18:G26,I19,I25:I26,J18:K26,M19,M25:M26,N18:O26,Q19,Q25:Q26,R18:S26" _
    ).Select
    Range("R18").Activate
    Selection.ClearContents
    Range("V5").Select
    ActiveCell.FormulaR1C1 = "FALSE"
    Range("V5").Select
    Selection.AutoFill Destination:=Range("V5:AE5"), Type:=xlFillDefault
    Range("V5:AE5").Select
    Selection.Copy
    Range("V6").Select
    ActiveSheet.Paste
    Range("V7").Select
    ActiveSheet.Paste
    ActiveWindow.ScrollColumn = 13
    ActiveWindow.ScrollColumn = 12
    ActiveWindow.ScrollColumn = 11
    ActiveWindow.ScrollColumn = 10
    ActiveWindow.ScrollColumn = 9
    ActiveWindow.ScrollColumn = 8
    ActiveWindow.ScrollColumn = 7
    ActiveWindow.ScrollColumn = 6
    ActiveWindow.ScrollColumn = 5
    ActiveWindow.ScrollColumn = 4
    ActiveWindow.ScrollColumn = 3
    ActiveWindow.ScrollColumn = 2
    ActiveWindow.ScrollColumn = 1
    ActiveWindow.ScrollColumn = 14
    ActiveWindow.ScrollColumn = 1
    ActiveWindow.SmallScroll Down:=-3

    ActiveWindow.ScrollColumn = 5
    ActiveWindow.ScrollColumn = 4
    ActiveWindow.ScrollColumn = 3
    ActiveWindow.ScrollColumn = 2
    ActiveWindow.ScrollColumn = 1
    ActiveWindow.SmallScroll Down:=-12
    Range("B2:C2,F2:G2,J2:K2,N2:O2").Select
    Range("N2").Activate
    ActiveWindow.ScrollColumn = 2
    ActiveWindow.ScrollColumn = 3
    ActiveWindow.ScrollColumn = 4
    ActiveWindow.ScrollColumn = 5
    ActiveWindow.ScrollColumn = 6
    Range("B2:C2,F2:G2,J2:K2,N2:O2,R2:S2").Select
    Range("R2").Activate
    ActiveWindow.ScrollColumn = 5
    ActiveWindow.ScrollColumn = 4
    ActiveWindow.ScrollColumn = 3
    ActiveWindow.ScrollColumn = 2
    ActiveWindow.ScrollColumn = 1
    Range("B2:C2,F2:G2,J2:K2,N2:O2,R2:S2,B17:C17,F17:G17,J17:K17,N17:O17").Select
    Range("N17").Activate
    ActiveWindow.ScrollColumn = 2
    ActiveWindow.ScrollColumn = 3
    ActiveWindow.ScrollColumn = 4
    ActiveWindow.ScrollColumn = 5
    ActiveWindow.ScrollColumn = 6
    ActiveWindow.ScrollColumn = 7
    Range("B2:C2,F2:G2,J2:K2,N2:O2,R2:S2,B17:C17,F17:G17,J17:K17,N17:O17,R17:S17"). _
    Select
    Range("R17").Activate
    Selection.Interior.ColorIndex = xlNone Arrêt du débogueur
    ActiveWindow.ScrollColumn = 9
    ActiveWindow.ScrollColumn = 8
    ActiveWindow.ScrollColumn = 7
    ActiveWindow.ScrollColumn = 6
    ActiveWindow.ScrollColumn = 5
    ActiveWindow.ScrollColumn = 4
    ActiveWindow.ScrollColumn = 3
    ActiveWindow.ScrollColumn = 2
    ActiveWindow.ScrollColumn = 1
    Sheets(2).Protect Password:="essai", DrawingObjects:=True, Contents:=True, Scenarios:=True
    End Sub

    Merci
    0
    1. Le Pingou Messages postés 12276 Date d'inscription   Statut Contributeur Dernière intervention   1 478
       
      Bonjour,
      Juste au passage, votre maco ne fait que remplir la plage "V5:AE7" avec la valeur "FAUX".
      Alors ou est le problème ?
      0
  3. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Salut tous,

    J'ai testé le code et aucun problème de fonctionnement, il pourrait simplement être simplifié parce qu'il fait un peu usine à gaz, et sans connaitre les attentes de sanchis81, je pense que bon nombre de lignes sont inutiles

    A+
    Mike-31

    Un problème sans solution est un problème mal posé  (Einstein)
    0
  4. pilas31 Messages postés 1878 Statut Contributeur 648
     
    Bonjour tout le monde,

    Juste un avis : supposons que la feuille active ne soit pas la feuille sheets(2) . Alors ce message peut être tout simplement parce qu'on travaille sur des cellules non déprotégées.

    J'ai fais un test si on lance la macro en en étant positionnée sur un feuille protégée qui ne soit pas la sheet(2) avec par exemple uniquement la cellule "S17" verrouillée. On obtient bien la même erreur au même endroit.

    Sanchis81 devrait donc vérifier que les deux feuilles sur lesquelles il travaille sont toutes les deux déverrouillées.

    Ceci étant dit, d'accord avec vous, cette macro ne semble pas faire ce qu'il annonce

    A+
    0
    1. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
       
      Salut,

      Tout à fait possible et d'accord avec toi, lorsque j'ai testé le code, j'avais neutralisé la protection et déprotection, par contre si tu protéges les feuilles il y a erreur.

      Bien vu

      Bon Dimanche

      A+
      Mike-31

      Un problème sans solution est un problème mal posé  (Einstein)
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. sanchis81 Messages postés 138 Statut Membre 10
     
    Merci ça fonctionne!
    0