Userforms pour saisie dans une base de données

ellea02

XLDnaute Junior
Bonjour,

J'ai besoin d'un coup de main! J'ai ce fichier avec une base, je veux créer une boite de dialogue via un userform. Celui-ci doit s'afficher à l'ouverture du fichier excel et je dois pouvoir revenir à tout moment sur la base de données. Je n'arrive pas à concevoir le code VBA pour enregistrer les valeurs saisies dans l'userform dans la base de données! Le but est de saisir des données sur la boite de dialogue pour que ça se mette automatiquement dans la base.
Pouvez vous m'aider?

Merci:confused:
 

Pièces jointes

  • saisie_client.xls
    17.5 KB · Affichages: 307

camarchepas

XLDnaute Barbatruc
Re : Userforms pour saisie dans une base de données

Voici la maquette modernisée.

Il y a encore tous les filtres et sécurités d'entrée à mettre en place.

Un menu de modification, suppression , etc etc ,

Mais bon, allons z'y petit à petit.
 
Dernière édition:

camarchepas

XLDnaute Barbatruc
Re : Userforms pour saisie dans une base de données

Il s'agit souvent d'une variable que l'on incrémente d'un pas de 1 généralement, permettant d'avoir un nombre d'éléments ou de se situer en nombre de ligne ou de colonne afin de balayer toutes les lignes ou colonnes de l'onglet.
Peux-tu préciser le cadre d'utilisation de ton compteur?
Par contre , il faudrait mettre une clef sur ta base afin de ne pas pouvoir avoir 2 fois la même donnée : l'on pourrait faire un assemblage clef = (Heure de saisie * 60) + (Minutes * 60 ) + secondes . Cela permettrait d'avoir un nombre unique par ligne de donnée.
 

ellea02

XLDnaute Junior
Re : Userforms pour saisie dans une base de données

Il s'agit souvent d'une variable que l'on incrémente d'un pas de 1 généralement, permettant d'avoir un nombre d'éléments ou de se situer en nombre de ligne ou de colonne afin de balayer toutes les lignes ou colonnes de l'onglet.
Peux-tu préciser le cadre d'utilisation de ton compteur?
Par contre , il faudrait mettre une clef sur ta base afin de ne pas pouvoir avoir 2 fois la même donnée : l'on pourrait faire un assemblage clef = (Heure de saisie * 60) + (Minutes * 60 ) + secondes . Cela permettrait d'avoir un nombre unique par ligne de donnée.
L'utilisation serait de compter les enregistrements comme les numéros autos sur access. Concernant ton deuxième paragraphe, tu parles de gestion des doublons?
 

camarchepas

XLDnaute Barbatruc
Re : Userforms pour saisie dans une base de données

En fait l'on cherche la même chose, ton compteur peut aussi servir de clef, je te suggère de l'ajouter à 1 ° colonne de droite disponible afin de ne pas décaler toutes les autres informations. Je pense malgré tous qu'il serait souhaitable de mémoriser date et heure de saisie.(Meilleure traçabilité)
 

ellea02

XLDnaute Junior
Re : Userforms pour saisie dans une base de données

Une sorte de clé primaire! y manque plus que les requêts et on fait du sql!
Le vba du compteur ressemble à ça:

Sub Incremente()
Range("V1").Value = Range("V1").Value + 1
End Sub
 

camarchepas

XLDnaute Barbatruc
Re : Userforms pour saisie dans une base de données

Oui, c'est pas mal, attention de bien être sur la bonne feuille.
Range("Base!V1").value = Range("Base!V1").value +1
Et cette valeur sera à reporter dans Vxx lors de la création d'une nouvelle ligne de données.
 

ellea02

XLDnaute Junior
Re : Userforms pour saisie dans une base de données

J'ai esssayé cela pour compter à chaque enregistrement, mais ça ne marche pas.Dès que j'appuie sur le bouton validation ça enregistre, mais là ça veut pas
Private Sub Validation_Click()
Range("Base!A1").Value = Range("Base!A1").Value + 1

End Sub
 

camarchepas

XLDnaute Barbatruc
Re : Userforms pour saisie dans une base de données

J'ai du oublier de préciser que c'était à ma droite à moi qu'il fallait ajouter la clef , donc plutot en V, en A tu décale tout car, le calcul du nombre de ligne ce fait également sur la colonne A
 

ellea02

XLDnaute Junior
Re : Userforms pour saisie dans une base de données

Ah ben il me manquait la 2ème ligne! Merci en tout cas! Je vais tenter de mettre une date auto dans l'userform! Je vois ça demain et si je galère, je reviendrais vers vous. Mais il faut que j'essaie pour apprendre sinon c'est pas marrant!
Bonne nuit!
 

Discussions similaires

Statistiques des forums

Discussions
314 204
Messages
2 107 183
Membres
109 769
dernier inscrit
patbol