Alimenter une BDD avec un Formulaire sans UserForm

Bonjour,

infos : BDD = base de données de ma feuille Réparation interne"

J' au fichier excel avec un formulaire sur la feuille 1 du classeur.

dans la deuxième feuille j'ai mon tableau qui stock les informations saisie dans le formulaire de la feuille 1.

Ma question :

- Exist-il une macro qui me permettrai de récupérer les informations saisie dans le formulaire et de venir les stocker dans mon tableau "réparation internes" a chaque fois que des nouvelles données sont saisie sans que ces dernières informations viennent remplacer les précédentes information déjà stocké dans le tableau " réparations internes"

je joins un fichier test au sujet et vous remerçiant d'avances pour le temps que vous aller me consacré et vos précieuses solutions.

Merci.

196fichier-test.xlsm (14.54 Ko)

Salut,

Une proposition à tester,

Girodo,

358fichier-test.xlsm (20.99 Ko)

Bonsoir ZED2100, le forum,

Un essai:

Code à affecter au bouton "Enregistrer" :

Sub test()

  Dim ListObj As ListObject, Sh As Worksheet, sh2 As Worksheet, j As Long

Set Sh = Sheets("Réparations internes")
 Set sh2 = Sheets("Accueil")
    Set ListObj = Sh.ListObjects("Tableau1")
      j = Sh.Cells(Rows.Count, 2).End(xlUp).Row

  With ListObj
   Sh.Cells(j, 2) = sh2.Range("D10")
   Sh.Cells(j, 3) = sh2.Range("D12")
   Sh.Cells(j, 4) = sh2.Range("D14")
   Sh.Cells(j, 5) = sh2.Range("D16")
   Sh.Cells(j, 6) = sh2.Range("D18")
  End With
   ListObj.ListRows.Add

   MsgBox "Données enregistrées"

   With sh2
    .Range("D10:D18") = ""

   End With
End Sub
163fichier-test-1.xlsm (21.30 Ko)

Cordialement,

EDIT: Salut Girodo , nos posts se sont croisés,

Bonsoir xorsankukai

Bonsoir Girodo

Merci infiniment à vous deux, les deux propositions répondent exactement à mes attentes et à ce que je recherchais, c'est parfait.

J'ai une dernière requête sur ce sujet.

J'ai rajouter des cases à cocher et je voulais savoir s'il est possible d'inscrire dans le tableau "Réparation internes" CB ou chèque selon le choix effectué dans le formulaire.

139fichier-test-1.xlsm (31.32 Ko)

Bonjour ZED21000, le forum,

Un essai......(attention, je me sers de la cellule A1 de la feuille Accueil, police en blanc pour la masquer).

Private Sub OBcb_Click()
 Sheets("Accueil").Range("A1") = "CB"
End Sub

Private Sub OBcheque_Click()
 Sheets("Accueil").Range("A1") = "Chèque"
End Sub

Private Sub OBvirement_Click()
 Sheets("Accueil").Range("A1") = "Virement"
End Sub
Sub test()

  Dim ListObj As ListObject, Sh As Worksheet, sh2 As Worksheet, j As Long

Set Sh = Sheets("Réparations internes")
 Set sh2 = Sheets("Accueil")
    Set ListObj = Sh.ListObjects("Tableau1")
      j = Sh.Cells(Rows.Count, 2).End(xlUp).Row

  With ListObj
   Sh.Cells(j, 2) = sh2.Range("D10")
   Sh.Cells(j, 3) = sh2.Range("D12")
   Sh.Cells(j, 4) = sh2.Range("D14")
   Sh.Cells(j, 5) = sh2.Range("D16")
   Sh.Cells(j, 6) = sh2.Range("D18")
   Sh.Cells(j, 7) = sh2.Range("D20")
   Sh.Cells(j, 8) = sh2.Range("A1")

  End With
   ListObj.ListRows.Add

   MsgBox "Données enregistrées"

   With sh2
    .Range("D10:D20") = ""

   End With
End Sub

Cordialement,

Bonjour xorsankukai

Merci pour votre solution, c'est exactement ce que je voulais faire et obtenir comme résultat.

ça fonctionne très bien

Bonjour,

avec ce formulaire comme dans votre exemple, je souhaite rappeler ma ligne pour la modifier.

cordialement

merci

Rechercher des sujets similaires à "alimenter bdd formulaire userform"