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:=xlFormatFromLeftOrAboveet
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 SubBonjour,
-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:=xlFormatFromLeftOrAboveet
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbovej'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.