Erreur d'exécution "1004"

Bonjour à tous,

Le VBA de mon fichier excel ne fonctionne pas en mode partagé. Lors de l'exécution de la macro j'ai ce message:

Erreur d'exécution "1004" La méthode Insert de la classe Range a échoué. Que faire?

Voici le code:

Sub AR()
'
' AR Macro
    Sheets("saisie-pilote").Select
    Range("A1:AZ100").Select
    Selection.Copy
    Sheets("Archivage").Select
    Range("A1").Select
    Selection.Insert Shift:=xlDown

    Range("K13").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("saisie-pilote").Select

    Range("C13").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Application.CutCopyMode = False
    ActiveWorkbook.Save
    Range("C2:C5,D10:K10,D11:K11,D13:K13,D25:N100").Select
    Range("D25").Activate
    Selection.ClearContents

    Range("C2").Select
    ActiveWorkbook.RefreshAll
End Sub

La macro n'est pas de moi et elle ne me semble pas très claire avec notamment tous les .Select mais elle fonctionne très bien lorsqu'elle n'est pas partagé.

Merci beaucoup de votre aide,

Blend

Bonjour

Ci-dessous le code modifié en enlevant les sélect (à testé avec le fichier ...)

Sub AR()
' AR Macro
Call Pcontrole
With Sheets("saisie-pilote")
    .Range("A1:AZ100").Copy
    Sheets("Archivage").Range("A1").Insert Shift:=xlDown
End With
With Sheets("Archivage")
    .Range("K13").Copy
    .Range("C13").PasteSpecial Paste:=xlPasteValues
    .Range("C2:C5,D10:K10,D11:K11,D13:K13,D25:N100").ClearContent
End With
ActiveWorkbook.Save
ActiveWorkbook.RefreshAll
Call Rcontrole
End Sub

A tester moyennant les deux codes ci-dessous à rajouter en dessous de la macro AR

Sub Pcontrole()
  If ActiveWorkbook.MultiUserEditing Then
     Application.DisplayAlerts = False
     ActiveWorkbook.ExclusiveAccess
     Application.DisplayAlerts = True
  End If
End Sub

Sub Rcontrole()
  If Not ActiveWorkbook.MultiUserEditing Then
     Application.DisplayAlerts = False
     ActiveWorkbook.SaveAs Filename:=ActiveWorkbook.FullName, accessMode:=xlShared
     Application.DisplayAlerts = True
  End If
End Sub

Si ok, merci de clôturer le fil en cliquant sur le V vert à coté du bouton EDITER lors de votre réponse

Crdlt

Bonjour Dan,

Merci beaucoup pour ta réponse!

Malheureusement j'obtiens une erreur d'exécution 438: Propriété ou méthode non gérée par cet objet.

En faisait du pas à pas, l'erreur provient du ClearContent

.Range("C2:C5,D10:K10,D11:K11,D13:K13,D25:N100").ClearContent

Une idée? Dois-je passer en mode partagé pour l'exécution de la macro?

Blend

Re,

Malheureusement j'obtiens une erreur d'exécution 438: Propriété ou méthode non gérée par cet objet

Logique, il manque un S à Clearcontent --> CLEARCONTENTS

Cordialement

Quelle erreur... J'ai modifié quelques lignes et cela fonctionne parfaitement maintenant.

encore merci, problème résolu !

Blend

Rechercher des sujets similaires à "erreur execution 1004"