Bonjour à tout le monde,
j'ai un petit soucis lors de la saisie et validation de mes données vers un tableau structuré.
C'est à dire :
Lorsque je saisi les données dans mon userform et que je clique sur valider, il me m'inscrit les données à la suite de mon tableau structuré au lieu de le faire une ligne au dessus.
Voici le code qui sert à valider cela.
J'espère que cela va vous aider à comprendre mon problème car mon fichier est très volumineux et difficile a transmettre.
Le tableau structuré de l'onglet "POINTS" se nomme "Tableau28" si vous avez besoin de cette info.
Le tableau "Tableau28" démarre à la ligne A2 de l'onglet "POINTS".
Private Sub VALIDATION_Click() 'Valider l'enregistrement des points saisis
Dim Wtc As Worksheet
Application.ScreenUpdating = False
Set Wtc = Sheets("POINTS")
If VALIDATION.Caption = "VALIDER" Then
Dl = Wtc.Range("A" & Rows.Count).End(xlUp).Row + 1
If Dl = 2 Then
Wtc.Cells(Dl, 1).Value = 1
Else
Wtc.Cells(Dl, 1).Value = Application.WorksheetFunction.Max(Wtc.Range("A2:A" & Dl).Value) + 1
End If
Wtc.Cells(Dl, 2).Value = CDate(Me.TextBox1.Value)
Wtc.Cells(Dl, 2).NumberFormat = "m/d/yyyy"
Wtc.Cells(Dl, 3).Value = CDate(Me.TextBox2.Value)
Wtc.Cells(Dl, 3).NumberFormat = "m/d/yyyy"
Wtc.Cells(Dl, 4).Value = CDate(Me.TextBox3.Value)
Wtc.Cells(Dl, 4).NumberFormat = "m/d/yyyy"
Wtc.Cells(Dl, 5).Value = Me.ComboBox1.Value
Wtc.Cells(Dl, 6).Value = Me.ComboBox2.Value
Wtc.Cells(Dl, 7).Value = Me.ComboBox3.Value
Wtc.Cells(Dl, 8).Value = Me.TextBox4.Value
If Me.OptionButton1 = True Then Wtc.Cells(Dl, 9).Value = Me.TextBox5.Value
If Me.OptionButton2 = True Then Wtc.Cells(Dl, 10).Value = Me.TextBox5.Value
Actualiser_Affiche
MsgBox " Points enregistrés"
Else
Dl = Wtc.Range("A" & Rows.Count).End(xlUp).Row
For i = 2 To Dl
If Me.lbltc.Caption = Wtc.Cells(i, 1).Value Then
Wtc.Range(Wtc.Cells(i, 2), Wtc.Cells(i, 10)) = ""
Wtc.Cells(i, 2).Value = CDate(Me.TextBox1.Value)
Wtc.Cells(i, 2).NumberFormat = "m/d/yyyy"
Wtc.Cells(i, 3).Value = CDate(Me.TextBox2.Value)
Wtc.Cells(i, 3).NumberFormat = "m/d/yyyy"
Wtc.Cells(i, 4).Value = CDate(Me.TextBox3.Value)
Wtc.Cells(i, 4).NumberFormat = "m/d/yyyy"
Wtc.Cells(i, 5).Value = Me.ComboBox1.Value
Wtc.Cells(i, 6).Value = Me.ComboBox2.Value
Wtc.Cells(i, 7).Value = Me.ComboBox3.Value
Wtc.Cells(i, 8).Value = Me.TextBox4.Value
If Me.OptionButton1 = True Then Wtc.Cells(i, 9).Value = Me.TextBox5.Value
If Me.OptionButton2 = True Then Wtc.Cells(i, 10).Value = Me.TextBox5.Value
Actualiser_Affiche
RAZ
Exit For
End If
Next
Me.LblTypeConge = "Points donnés "
Me.OptionButton1 = True
VALIDATION.Caption = "VALIDER"
VALIDATION.BackColor = &HFF00&
MsgBox " Points donnés modifiés"
End If
End Sub
Merci d'avance à vous pour vos infos et rectifications.
Marvin57
j'ai un petit soucis lors de la saisie et validation de mes données vers un tableau structuré.
C'est à dire :
Lorsque je saisi les données dans mon userform et que je clique sur valider, il me m'inscrit les données à la suite de mon tableau structuré au lieu de le faire une ligne au dessus.
Voici le code qui sert à valider cela.
J'espère que cela va vous aider à comprendre mon problème car mon fichier est très volumineux et difficile a transmettre.
Le tableau structuré de l'onglet "POINTS" se nomme "Tableau28" si vous avez besoin de cette info.
Le tableau "Tableau28" démarre à la ligne A2 de l'onglet "POINTS".
Private Sub VALIDATION_Click() 'Valider l'enregistrement des points saisis
Dim Wtc As Worksheet
Application.ScreenUpdating = False
Set Wtc = Sheets("POINTS")
If VALIDATION.Caption = "VALIDER" Then
Dl = Wtc.Range("A" & Rows.Count).End(xlUp).Row + 1
If Dl = 2 Then
Wtc.Cells(Dl, 1).Value = 1
Else
Wtc.Cells(Dl, 1).Value = Application.WorksheetFunction.Max(Wtc.Range("A2:A" & Dl).Value) + 1
End If
Wtc.Cells(Dl, 2).Value = CDate(Me.TextBox1.Value)
Wtc.Cells(Dl, 2).NumberFormat = "m/d/yyyy"
Wtc.Cells(Dl, 3).Value = CDate(Me.TextBox2.Value)
Wtc.Cells(Dl, 3).NumberFormat = "m/d/yyyy"
Wtc.Cells(Dl, 4).Value = CDate(Me.TextBox3.Value)
Wtc.Cells(Dl, 4).NumberFormat = "m/d/yyyy"
Wtc.Cells(Dl, 5).Value = Me.ComboBox1.Value
Wtc.Cells(Dl, 6).Value = Me.ComboBox2.Value
Wtc.Cells(Dl, 7).Value = Me.ComboBox3.Value
Wtc.Cells(Dl, 8).Value = Me.TextBox4.Value
If Me.OptionButton1 = True Then Wtc.Cells(Dl, 9).Value = Me.TextBox5.Value
If Me.OptionButton2 = True Then Wtc.Cells(Dl, 10).Value = Me.TextBox5.Value
Actualiser_Affiche
MsgBox " Points enregistrés"
Else
Dl = Wtc.Range("A" & Rows.Count).End(xlUp).Row
For i = 2 To Dl
If Me.lbltc.Caption = Wtc.Cells(i, 1).Value Then
Wtc.Range(Wtc.Cells(i, 2), Wtc.Cells(i, 10)) = ""
Wtc.Cells(i, 2).Value = CDate(Me.TextBox1.Value)
Wtc.Cells(i, 2).NumberFormat = "m/d/yyyy"
Wtc.Cells(i, 3).Value = CDate(Me.TextBox2.Value)
Wtc.Cells(i, 3).NumberFormat = "m/d/yyyy"
Wtc.Cells(i, 4).Value = CDate(Me.TextBox3.Value)
Wtc.Cells(i, 4).NumberFormat = "m/d/yyyy"
Wtc.Cells(i, 5).Value = Me.ComboBox1.Value
Wtc.Cells(i, 6).Value = Me.ComboBox2.Value
Wtc.Cells(i, 7).Value = Me.ComboBox3.Value
Wtc.Cells(i, 8).Value = Me.TextBox4.Value
If Me.OptionButton1 = True Then Wtc.Cells(i, 9).Value = Me.TextBox5.Value
If Me.OptionButton2 = True Then Wtc.Cells(i, 10).Value = Me.TextBox5.Value
Actualiser_Affiche
RAZ
Exit For
End If
Next
Me.LblTypeConge = "Points donnés "
Me.OptionButton1 = True
VALIDATION.Caption = "VALIDER"
VALIDATION.BackColor = &HFF00&
MsgBox " Points donnés modifiés"
End If
End Sub
Merci d'avance à vous pour vos infos et rectifications.
Marvin57