Saut de cellule dans une formule

Bonjour,

j'ai un petit problème que je ne comprend pas trop:

Lorsque que j'insert des nouvelles données via mon formulaire cela ajoute automatiquement une ligne à mon tableau, et dans ce tableau il y a des formules qui se recopie vers le bas automatiquement(principe du tableau). Mon problème est que j'ai un saut/décalage de cellule qui se fait automatiquement dans une formule.

exemple: en F3 j'ai cette formule =E3+365*2

et lorsque je crée une nouvelle ligne via mon formulaire, j'obtient en F4 => =E5+365*2 alors que normalement je devrais obtenir =E4+365*2

D’où provient se saut? Et comment résoudre le problème svp?

12fichier-test.xlsm (154.34 Ko)

Je pense qu'il y a un rapport avec la ligne d'entête du tableau

Salut iskidil,

pour éviter ce problème ajoute cette ligne au code

Range("F" & L).FormulaR1C1 = "=RC[-1]+365*2"

donc le code deviendra comme suivant:

Private Sub CommandButton1_Click()

Dim L As Integer

If (ComboBox1.Value <> "") And (TextBox1.Value <> "") And (TextBox2.Value <> "") And (TextBox3.Value <> "") And (TextBox4.Value <> "") Then
    Worksheets("Habilitation").Unprotect ("")
End If

 If MsgBox("Confirmez-vous l'insertion de ce nouveau personnel ?", vbYesNo, "Demande de confirmation d'ajout") = vbYes Then
     L = Sheets("Habilitation").Range("a65536").End(xlUp).Row + 1 'Pour placer le nouvel enregistrement à la première ligne de tableau non vide

     Range("A" & L).Value = ComboBox1
     Range("B" & L).Value = TextBox1
     Range("C" & L).Value = TextBox2
     Range("D" & L).Value = TextBox3
     Range("E" & L).Value = TextBox4
     Range("F" & L).FormulaR1C1 = "=RC[-1]+365*2"
 End If
Worksheets("Habilitation").Protect ("")
ComboBox1.Value = ""
TextBox1.Value = ""
TextBox2.Value = ""
TextBox3.Value = ""
TextBox4.Value = ""

End Sub

@++

Rechercher des sujets similaires à "saut formule"