Erreur 1004 méthode insert Range

Bonjour!

Je suis embêtée, me voilà à deux jours du rendu de mon projet, et je me rends compte d'un "bug" dans une fonction primaire de mon projet.

A la création d'une fiche, une fenetre apparaît avec le message "Erreur 1004: La méthode de la classe Range à échoué"

Avez vous une idée de solutions?

l'erreurr se trouve aux lignes :

  .Rows("4:4").Insert Shift:=xlDown 'CopyOrigin:=xlFormatFromLeftOrAbove

et

 Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove 

Voici les codes d'insertion de ligne que j'utilise et qui a l'air de faire planter mon programme:

' Pour le formulaire

Private Sub UserForm_Initialize()
Dim J As Long
Dim I As Integer

    TextBox3 = Date

 End Sub

 'Pour le bouton Nouvelle fiche
Private Sub CommandButton1_Click()
Dim L As Integer
If MsgBox("Confirmez-vous l’insertion de cette nouvelle fiche ?", vbYesNo, "Demande de confirmation d’ajout") = vbYes Then
    With Sheets("Archives")
    MsgBox ("Fiche bien enregistrée, veuillez quitter. ")

' Erreur si la case Besoin/Demandeur/Zone est vide
 If Me.TextBox1 = "" Then
 MsgBox "Veuillez remplir la case Constat/Besoin"

  Else

   If OptionButton1.Value = True Then 'Pour préciser que la Fiche est acceptée

'insertion d'une nouvelle ligne dans le tableau (créé une ligne 4 vide)
        .Rows("4:4").Insert Shift:=xlDown 'CopyOrigin:=xlFormatFromLeftOrAbove
        Range("D4").Select
        ActiveCell.FormulaR1C1 = TextBox3 'mettre la date
        Range("R4").Activate
        Range("R4").Select
        ActiveCell.FormulaR1C1 = ComboBox3
        Range("F4").Select
        ActiveCell.FormulaR1C1 = ComboBox1
        Range("G4").Select
        ActiveCell.FormulaR1C1 = ComboBox2
        Range("H4").Select
        ActiveCell.FormulaR1C1 = TextBox2
        Range("I4").Select
        ActiveCell.FormulaR1C1 = TextBox1
        Range("J4").Select
        ActiveCell.FormulaR1C1 = ComboBox4
        Range("K4").Select
        ActiveCell.FormulaR1C1 = TextBox4
        Range("Q4").Select
        ActiveCell.FormulaR1C1 = TextBox5

    ElseIf OptionButton2.Value = True Then  'Pour préciser que la Fiche est refusée

        Rows("5:5").Select
        Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
        Range("D5").Select
        ActiveCell.FormulaR1C1 = TextBox3 'mettre la date
        Range("R5").Activate
        Range("R5").Select
        ActiveCell.FormulaR1C1 = ComboBox3
        Range("F5").Select
        ActiveCell.FormulaR1C1 = ComboBox1
        Range("G5").Select
        ActiveCell.FormulaR1C1 = ComboBox2
        Range("H5").Select
        ActiveCell.FormulaR1C1 = TextBox2
        Range("I5").Select
        ActiveCell.FormulaR1C1 = TextBox1
        Range("J5").Select
        ActiveCell.FormulaR1C1 = ComboBox4
        Range("K5").Select
        ActiveCell.FormulaR1C1 = TextBox4
        Range("Q5").Select
        ActiveCell.FormulaR1C1 = TextBox6

    Else
        MsgBox ("Fiche Acceptée ou refusée? ") 'Message d'erreur si aucun n'est selectionné

    End If

 End If

End With

End If

End Sub

Bonjour,

-elle apparaît sur quels ligne cette erreur ?

-pourquoi le "end with" est à la fin alors que vous ne l'utiliser plus depuis un bon moment , elle devient inutile 7 ligne après sa déclaration

L'erreur est à la ligne de code

 .Rows("4:4").Insert Shift:=xlDown 'CopyOrigin:=xlFormatFromLeftOrAbove

et

 Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove

j'ai tester ces ligne de code et je n'ai pas d'erreur , vérifie bien si vous feuille sont protéger ou non ?

Non, j'ai vérifié...

Bonjour.

(Code enregistré j'imagine ?)

Essaye de remplacer par Sheets("Archives").Rows(4).Insert Shift:=xlDown

Il a peut-être du mal avec tous les select et autres activecell, lui repréciser de quoi on parle l'aidera peut-être. Si ton projet est un projet scolaire, nettoie ton code sinon tu vas te faire taper sur les doigts

Bonne journée.

Rechercher des sujets similaires à "erreur 1004 methode insert range"