GESTION SIMPLE D'UNE BASE DE DONNÉES ACCESS EN ADO POUR DÉBUTANT

Zlub Messages postés 809 Date d'inscription mercredi 11 octobre 2000 Statut Membre Dernière intervention 29 septembre 2010 - 26 juil. 2005 à 03:49
 Utilisateur anonyme - 28 avril 2006 à 15:24
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/32890-gestion-simple-d-une-base-de-donnees-access-en-ado-pour-debutant

Utilisateur anonyme
28 avril 2006 à 15:24
bonjour,

et ben de rien ying et pour zogade je vais regarder ça....

salut
doro
zogade Messages postés 7 Date d'inscription mardi 9 décembre 2003 Statut Membre Dernière intervention 14 mars 2006
14 mars 2006 à 15:21
si je suprime tout les enregistrements le programme plante
cs_ying Messages postés 8 Date d'inscription samedi 1 mars 2003 Statut Membre Dernière intervention 21 octobre 2014
8 mars 2006 à 00:22
Et benh voilà; je ramais comme un brave... et tac un truc simple donc merci
Utilisateur anonyme
25 oct. 2005 à 20:44
bonsoir,

merci pour les appréciations et
j'avais penser à intercepter les données saisies
par l'utilisateur mais je n'ais pas encore pris le temps de le faire...(prochaine mise à jour)

et merci aux personnes qui ont mis une note

Salut
Doro
nairolf_88 Messages postés 11 Date d'inscription mardi 13 avril 2004 Statut Membre Dernière intervention 8 mars 2006
27 sept. 2005 à 15:22
bonne source !

Elle m'a permis de mieux comprendre l'interaction entre VB et une base de données Access. Le code est clair et bien commenté, mais je pense que tu devrais testé la valité les saisis de l'utilisateur car par exemple dans le cas ou l'utilisateur saisi une date incorrect dans le champ date de naissance ton application planté en donnant l'erreur "Le type ne corresponds pas".

@++ nairolf
Utilisateur anonyme
22 sept. 2005 à 07:06
ben... de rien

salut
doro
ista2020 Messages postés 11 Date d'inscription samedi 17 septembre 2005 Statut Membre Dernière intervention 20 mars 2006
17 sept. 2005 à 22:45
Merci beaucoup
ridaafi Messages postés 1 Date d'inscription vendredi 16 septembre 2005 Statut Membre Dernière intervention 17 septembre 2005
17 sept. 2005 à 16:50
merci
Utilisateur anonyme
9 août 2005 à 05:29
salut infostr,

je pense que tu as du te trompe parce que ya pas de msflexgrid dans ma source mais sinon regarde ce code source dans une des forms il y a une msflexgrid et il y a un module pour l'imprimer

http://www.vbfrance.com/code.aspx?ID=3823

ca peut t'aider
salut doro
infostr Messages postés 1 Date d'inscription lundi 8 août 2005 Statut Membre Dernière intervention 8 août 2005
8 août 2005 à 23:10
Salut,

Je n'arrive pas à trouver la méthode par laquelle
je pourrai remplir le MSFlexGrid manuellement, enregistrer et imprimer les pages sans apparition d'aucun objet sur mon imprimé.

infostr
Utilisateur anonyme
30 juil. 2005 à 17:27
salut zlub,
les seules modifications que je n'ai pas pu appor´ter concerne ton dernier post,pourrais tu me dire ce qu'il faut que je mettes dans la procédure next_tab s'il te plaît
si tu as le temps
merci d'avance
a+
doro
Utilisateur anonyme
26 juil. 2005 à 20:36
salut,
je prend note c'est mieux merci
a+
doro
Zlub Messages postés 809 Date d'inscription mercredi 11 octobre 2000 Statut Membre Dernière intervention 29 septembre 2010 8
26 juil. 2005 à 19:44
Salut,

Petite précision pour tabstop

Si tu les défini à true et que tu donnes l'ordre entre elles, tu peux mettre dans les KeyPress des textbox

Call Sub Next_tab(KeyAscii)

qui donneras le focus tout seul à l'élement suivant lorsque l'utilisateur press Enter
Utilisateur anonyme
26 juil. 2005 à 19:39
salut
pour eps32hay je suis contente que ça puisse t'aider et je le rappelle je tiens ce code (la requete) de jeff

et pour zlub je sais que tu as la critique facile c'est pour cela que j'ai dit :
"mais venant de toi je peux l'accepter "
a+
doro
Zlub Messages postés 809 Date d'inscription mercredi 11 octobre 2000 Statut Membre Dernière intervention 29 septembre 2010 8
26 juil. 2005 à 18:28
Salut,

Pour un début c'est bien ... juste que j'ai pas le compliment facil et que je suis assez critique... mais je pense que ce sont des remarques constructices...

bon dev,

Zlub
Zlub Messages postés 809 Date d'inscription mercredi 11 octobre 2000 Statut Membre Dernière intervention 29 septembre 2010 8
26 juil. 2005 à 18:26
Salut Doro

"Pas tres flatteur" si au contraire : d'une maniere générale j'ai pas le compliment facil, j'suis un peu trop critique :) Mais je ne pense pas critiquer pour "casser", j'espere que c'est au contraire constructif.... Pour un début c'est bien (hou là je me lâche)

Bon dev,

Zlub
EPS32HAY Messages postés 100 Date d'inscription vendredi 20 décembre 2002 Statut Membre Dernière intervention 1 février 2009
26 juil. 2005 à 15:46
Salut DORO81079,

Moi j'aime bien ton code, de plus il va m'aider à creer une requete de recherche dans ma base de données.

Merci Beaucoup.
Utilisateur anonyme
26 juil. 2005 à 11:10
salut zlub,
pas tres flatteur mais venant de toi je peux l'accepter sinon
pour
1-fainéantise(c'est pas bien je sais)
2 et 3- tu as raison mais je savais pas (débutante)
4- je n'ai pas mis tabstop a true pour que les textbox soit gérer par la touche entrer (je préfère)et les boutons par tab
5- pour éviter de les mettres dans chaques procédures(voir 1)
6- voir 2 et 3
et merci pour les appréciations et pour la note
et petite précision quand je dis derniere dans mon premier commentaire je parle des critiques gratuite et pas du post de zlub
voilà
salut doro
Utilisateur anonyme
26 juil. 2005 à 10:53
j'ai oublié de préciser que toute critique en vue d'amélioration
ou même gratuite sont les bienvenues même si pour la derniere elle ne flate pas mon ego
doro
Zlub Messages postés 809 Date d'inscription mercredi 11 octobre 2000 Statut Membre Dernière intervention 29 septembre 2010 8
26 juil. 2005 à 03:49
C'est pas mal... déjà ça marche, y'a de bonnes idées et fonctionnalitées. Un peu léger en commentaires quoi que çareste clair... Coté interface, c'est propre (c'est comme un bon point)
Un autre bon point pour les Set xx = Nothing. Un bon point à nouveau, tes controles sont nommés proprement... et ça perso Z'aime beaucoup. Gestion des ereeurs On error, plutôt bien (voir On Error goto )

Bon now critique :

1) Identation: pourquoi vous alignez tous vos codes à gauche ... c'est pas lisible, faites des tabulations, des sauts de lignes ... sinon si on suit votre logique pourquoi ne pas tapper le code sur une ligne !! (bon ça c'est dit, mais t'es loin d'être la seule) Le pire c'est cmdrecherche_Click avec des If imbriqués ... qui appartient à qui ?

2) à la place de Dim tb1 As New ADODB.Recordset, tu devrais faire
Dim tb1 As ADODB.Recordset
Set tb1 = New ADODB.Recordset
faire deux choses à la fois déclarer et instancier c'est pas top. D'autant que tu ne peux pas tester si l'objet est bien instancier..

3) select case :
Select Case msg1
Case vbYes
Unload Me
Case vbNo
Cancel = 1
End Select

c'est un peu abusif, tu peux tout remplacer par un If (et pour te faire plaisir en une ligne)
If msg1 vbNo Then Cancel 1

voir même

If MsgBox("Voulez-vous vraiment fermer le carnet d'adresses ?", vbQuestion + vbYesNo)vbNo Then Cancel 1

4) Pour le confort, tu devrais mettre Tabstop à True pour tout les elements où tu veux donner acces avec TAB et définir TabIndex (permet de définir l'endroit où le focus doit aller lors d'un TAB. La valeur du Tabindex doit être unique.) Genre txtNom (tabindex 0) txt txtprenom (tabindex 1) ... Du coups une fois que tous est bien numéroté sur les KeyPress tu peux faire appel à Call Sub Next_tab(KeyAscii) au lieu de nommer explicitement les textbox + setfocus

Public Sub Next_tab(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
SendKeys "{TAB}" ' simuler le TAB
KeyAscii = 0 'supprimer le TAB lorsque le focus est arrivé
End If
End Sub

5) Dim msg1, msg2 As String
En public pourquoi faire ? autant définir là où tu en as vraiement besoin (unload et cmdrecherche_Click) ou au pire si tu veux laisser en l'état une seule variable suffit.

6) Tes tests à deux états tu peux les écrire plus simplement :
txtdep.Text = IIf( IsNull(tb![Département]) , "", tb![Département])
IIf( test, valeur_renvoyé_si_test_true,valeur_renvoyé_si_test_false)

J'aurais mis 6.5 mais bon va pour un 7/10 :)

voilà, j'espere que ça va t'aider ... Tu es en bonne voie, donc continues et bon dev

++

Zlub
Rejoignez-nous