XL 2019 Syntax VBA pour fichier tracking de processus

sgangbadjo

XLDnaute Nouveau
Bonsoir a tous,

Je développe actuellement une base de données de tracking de transactions avec des formulaires pour le remplir.
La syntaxe ci-dessous est écrite pour le premier formulaire

Mais lorsque je valide les nouvelles données écrasent la ligne existante dans la base de données au lieu de créer une ligne après la dernier ligne.

Please Help
==========================================================

Private Sub CommandButton1_Click()

'declaration des variables
Dim f1 As Worksheet
Dim derlig As Long

'identification de la feuille des donnees
Set f1 = Sheets("TRACKING")
derlig = f1.ListObjects("Table1").DataBodyRange.Rows.Count + 1 'derniere ligne du tableau

If MsgBox("Etes vous sûr de vouloir sauvegarder?", vbYesNo, "confirmation") = vbYes Then
With f1
'verifie si toutes les Textbox sont remplis
For i = 1 To 5
If Controls("Textbox" & i) = "" Then
MsgBox "Veuillez remplir toutes les cellules"
Exit Sub
End If
Next i
'Verifie si tous les comboBox sont remplis
For i = 1 To 3
If Controls("Combobox" & i) = "" Then
MsgBox "Veuillez renseigner toutes les cellules"
Exit Sub
End If

'remplissage

.Cells(derlig, i + 2) = Controls("TextBox" & i)

Next
For c = 1 To 4
.Cells(derlig, c + 5) = Controls("ComboBox" & c)
Next
For d = 4 To 5
.Cells(derlig, d + 6) = Controls("TextBox" & d)
Next

End With
End If
Unload Me
 

Pièces jointes

  • PROCUREMENT TRACKING .xlsm
    27.1 KB · Affichages: 3

sgangbadjo

XLDnaute Nouveau
Probleme resolu avec la syntaxe ci- dessous. Je suis toujours preneur d'une amelioration

Private Sub CommandButton1_Click()

'declaration des variables
Dim f1 As Worksheet
Dim DerLigne As Long

'identification de la feuille des donnees
Set f1 = Sheets("TRACKING")
DerLigne = Sheets("TRACKING").Range("A" & Rows.Count).End(xlUp).Row + 1 'derniere ligne du tableau

If MsgBox("Etes vous sûr de vouloir sauvegarder?", vbYesNo, "confirmation") = vbYes Then
With f1
'verifie si toutes les Textbox sont remplis
For i = 1 To 5
If Controls("Textbox" & i) = "" Then
MsgBox "Veuillez remplir toutes les cellules"
Exit Sub
End If
Next i
'Verifie si tous les comboBox sont remplis
For i = 1 To 3
If Controls("Combobox" & i) = "" Then
MsgBox "Veuillez renseigner toutes les cellules"
Exit Sub
End If
Next
For e = 1 To 3
'remplissage

.Cells(DerLigne, e + 2) = Controls("TextBox" & e)

Next
For c = 1 To 4
.Cells(DerLigne, c + 5) = Controls("ComboBox" & c)
Next
For d = 4 To 5
.Cells(DerLigne, d + 6) = Controls("TextBox" & d)
Next

End With
End If
Unload Me


End Sub
 

sgangbadjo

XLDnaute Nouveau
Hello a tous,

Puise avoir un coup de main pour corriger la Syntaxe ci dessous?

Le message d'erreur est : Compile error: Object required

Merci pour l'appui

Private Sub CommandButton1_Click()

Dim f1 As Worksheet
Dim ligne As Long
Dim cible As Variant

Set f1 = Sheets("TRACKING")
Set cible = Me.TextBox1.Value
Set ligne = Application.WorksheetFunction.CountIf(Sheets("TRACKING").Range("C1:C" & DerLigne), cible)

If MsgBox("Etes vous sûr de vouloir sauvegarder?", vbYesNo, "confirmation") = vbYes Then
With f1

f1.Cells(ligne, 13).Value = Me.TextBox4.Value
f1.Cells(ligne, 14).Value = Me.TextBox5.Value
f1.Cells(ligne, 12).Value = Me.ComboBox1.Value
f1.Cells(ligne, 18).Value = Me.TextBox6.Value
f1.Cells(ligne, 15).Value = Me.ComboBox2.Value
f1.Cells(ligne, 16).Value = Me.ComboBox3.Value
f1.Cells(ligne, 17).Value = Me.TextBox7.Value
f1.Cells(ligne, 19).Value = Me.TextBox8.Value
f1.Cells(ligne, 21).Value = Me.TextBox9.Value
f1.Cells(ligne, 20).Value = Me.TextBox10.Value
f1.Cells(ligne, 22).Value = Me.TextBox11.Value
f1.Cells(ligne, 23).Value = Me.TextBox12.Value
End With
End If
Unload Me

End Sub
 

Discussions similaires

Réponses
7
Affichages
292

Statistiques des forums

Discussions
311 709
Messages
2 081 766
Membres
101 815
dernier inscrit
sgep59