Tuto VB/Access
MrSlave
Messages postés
2587
Date d'inscription
Statut
Membre
Dernière intervention
-
Rikkunter Messages postés 6023 Date d'inscription Statut Membre Dernière intervention -
Rikkunter Messages postés 6023 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je dois réaliser une base de temps avec le couple VB6 / Access.
Je recherche donc des tutos car je n'ai jamais utilisé ni l'un, ni l'autre.
Merci.
Je dois réaliser une base de temps avec le couple VB6 / Access.
Je recherche donc des tutos car je n'ai jamais utilisé ni l'un, ni l'autre.
Merci.
A voir également:
- Tuto VB/Access
- Vb - Télécharger - Langages
- Tuto tableau croisé dynamique - Guide
- Tuto torrent - Guide
- Tuto chromecast - Guide
- Tuto rufus windows 11 - Guide
284 réponses
Bonjour,
déjà pour access..
https://mhubiche.developpez.com/Access/cours/bases/
A+
EDIT:
J'ai retrouvé ca .. pour VB6
https://vb.developpez.com/cours/
déjà pour access..
https://mhubiche.developpez.com/Access/cours/bases/
A+
EDIT:
J'ai retrouvé ca .. pour VB6
https://vb.developpez.com/cours/
MrSlave
Messages postés
2587
Date d'inscription
Statut
Membre
Dernière intervention
147
Je les avait trouvés mais merci quand même. ^^
Salut Polux. :)
(plus de 615 posts quand même).
Comment ça va bien ?
Prêt pour un we de 3 jours ?
Dis, est ce que tu t'es déjà servi d'ArrayList ?
J'ai éssayé de faire comme indiqué ici : https://plasserre.developpez.com/cours/vb-net/
J'ai donc mis : Imports System.Collections en haut de mon module et Dim L As New ArrayList() en tant que variable globale.
Mais je ne peux pas m'en servir. :S
La définition de la variable ne passe pas.
P'tet une petite idée ? :)
(plus de 615 posts quand même).
Comment ça va bien ?
Prêt pour un we de 3 jours ?
Dis, est ce que tu t'es déjà servi d'ArrayList ?
J'ai éssayé de faire comme indiqué ici : https://plasserre.developpez.com/cours/vb-net/
J'ai donc mis : Imports System.Collections en haut de mon module et Dim L As New ArrayList() en tant que variable globale.
Mais je ne peux pas m'en servir. :S
La définition de la variable ne passe pas.
P'tet une petite idée ? :)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Tu cherches quoi au juste comme info ?? Quelles sont les points qui posent problèmes ?? On peut peut être te filer des tuyaux ...
;o)
Tu cherches quoi au juste comme info ?? Quelles sont les points qui posent problèmes ?? On peut peut être te filer des tuyaux ...
;o)
Comme je l'ai dit précédement, je n'ai jamais utilisé ni le vb, ni Access.
Je commence à comprendre l'ajout de méthodes sur les différents élément d'un form (bouton ...). Parce qu'après tout c'est de l'objet. :)
Donc pour commencer, j'aimerais pouvoir me co à une base et récupérer des données.
C'est la partie relation entre vb et access qui me pose des problèmes.
Je commence à comprendre l'ajout de méthodes sur les différents élément d'un form (bouton ...). Parce qu'après tout c'est de l'objet. :)
Donc pour commencer, j'aimerais pouvoir me co à une base et récupérer des données.
C'est la partie relation entre vb et access qui me pose des problèmes.
Elle est taquine Rikki ....
Voilà un module pour se connecter à une base Access. Il faut ajouter la référence Microsoft ActiveX Data Objects x.x Library ...
https://www.cjoint.com/?gfnGBoir2Q
Reviens me voir si tu as un blème.
;o)
Voilà un module pour se connecter à une base Access. Il faut ajouter la référence Microsoft ActiveX Data Objects x.x Library ...
https://www.cjoint.com/?gfnGBoir2Q
Reviens me voir si tu as un blème.
;o)
Fait un module uniquement pour les échanges avec la base, donne lui le nom de ModBdd. Dans le module tu as une variable constante:
Tu remplaces "c:\maBase.mdb" par le chemin et le nom de ta base.
Ensuite dans le Form_Load, rien ne t'empêche de faire :
Evites de mettre du code dans les modules des formulaires. Fait un module par formulaire ainsi qu'un module pour le traitement des données.
J'ai pas d'exemple ici sous la main, mais je vais tacher de te faire passer un petit truc demain pour te montrer comment faire.
;o)
Private Const BDD = "c:\maBase.mdb"
Tu remplaces "c:\maBase.mdb" par le chemin et le nom de ta base.
Ensuite dans le Form_Load, rien ne t'empêche de faire :
Sub Form_Load() ModBdd.ConnectBdd End Sub
Evites de mettre du code dans les modules des formulaires. Fait un module par formulaire ainsi qu'un module pour le traitement des données.
J'ai pas d'exemple ici sous la main, mais je vais tacher de te faire passer un petit truc demain pour te montrer comment faire.
;o)
Bien alors je ne voudrais pas trop partir dans de mauvaises directions, alors je vais faire un petit point.
J'ai mon module ModBdd qui contient :
Public Const PathBase As String = "C:\Documents and Settings\RBEN\Mes documents\base_temps.mdb"
Public Sub ConnectBdd()
Set cnx = New ADODB.Connection
cnx.CursorLocation = adUseServer
'Définition du pilote de connexion
cnx.Provider = "Microsoft.Jet.OLEDB.4.0"
'Définition de la chaîne de connexion
cnx.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & PathBase & ";Persist Security Info=False;"
cnx.ConnectionString = cnx.ConnectionString
'Ouverture de la base de données
cnx.Open
End Sub
Et pour me connecter à la base dès le lancement de ma page, j'ai mis :
Private Sub Form_Load()
ModBdd.ConnectBdd
End Sub
Pour finir, un petit combobox : (mais il ne fonctionne pas).
Private Sub Combo1_Change()
Dim verb As ADODB.Recordset
Set verb = New ADODB.Recordset
verb.Open "SELECT Verbe FROM test"
combobox1.AddItem verb
End Sub
Est ce que je pourrais avoir un petit coup de main pour le combo, siouplait ?
Merci.
J'ai mon module ModBdd qui contient :
Public Const PathBase As String = "C:\Documents and Settings\RBEN\Mes documents\base_temps.mdb"
Public Sub ConnectBdd()
Set cnx = New ADODB.Connection
cnx.CursorLocation = adUseServer
'Définition du pilote de connexion
cnx.Provider = "Microsoft.Jet.OLEDB.4.0"
'Définition de la chaîne de connexion
cnx.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & PathBase & ";Persist Security Info=False;"
cnx.ConnectionString = cnx.ConnectionString
'Ouverture de la base de données
cnx.Open
End Sub
Et pour me connecter à la base dès le lancement de ma page, j'ai mis :
Private Sub Form_Load()
ModBdd.ConnectBdd
End Sub
Pour finir, un petit combobox : (mais il ne fonctionne pas).
Private Sub Combo1_Change()
Dim verb As ADODB.Recordset
Set verb = New ADODB.Recordset
verb.Open "SELECT Verbe FROM test"
combobox1.AddItem verb
End Sub
Est ce que je pourrais avoir un petit coup de main pour le combo, siouplait ?
Merci.
pas mal .... mais c'est pas ça ... dommage ...
Alors il faut pas remplir la combo sur l'évènement Change() de la combo !!! mais par exemple sur le Form_Load ...
J'ai fait ça de tête, je peux pas tester ici
;o)
Alors il faut pas remplir la combo sur l'évènement Change() de la combo !!! mais par exemple sur le Form_Load ...
Private Sub Form_Load() Dim verb As ADODB.Recordset Set verb = New ADODB.Recordset ModBdd.ConnectBdd verb.Open "SELECT Verbe FROM test" While Not verb.EOF combobox1.AddItem verb.Fields(0) verb.MoveNext Wend End Sub
J'ai fait ça de tête, je peux pas tester ici
;o)
Si tu as copié tout le module que je t'ai fait passer, tu peux aussi faire comme ça
Private Sub Form_Load() Dim verb As ADODB.Recordset Dim query As String Dim Vrai As Boolean query = "SELECT Verbe FROM test" Set verb = New ADODB.Recordset ModBdd.ConnectBdd vrai = ModBdd.OpenRecordset(query, verb) vrai = ModBdd.RSLirePremier(verb) While Vrai = true combobox1.AddItem verb.Fields(0) vrai = ModBdd.RSLireSuivant(verb) Wend End Sub
Salut,
De rien. Je vais enfiler mon 2ème kawa ... j'ai pas les yeux en face des trous ce matin ... vivement l'apéro
;o)
De rien. Je vais enfiler mon 2ème kawa ... j'ai pas les yeux en face des trous ce matin ... vivement l'apéro
;o)
Je ne sais pas, mais tu peux utiliser une variable globale dans un module. Quand tu cliques sur le bouton tu affectes à la variable la valeur de la combobox, et dans le form_load après avoir rempli la combobox tu rajoutes ça:
ComboBox1.Text = mavariable
ComboBox1.Text = mavariable
De rien, t'as plus k'à payer l'apéro .. j'aime les kaouètes ...
;o)
;o)
Vu l'aide que tu m'apporte, je peux même en payer plusieurs des apéros. ^^
Euh ... quelle est la différence entre datagrid et flexgrid ?
Apparement la flexgrid ne prend pas en compte les valeurs entrée par l'utilisateur mais il peut les prendre en compte avec un ajout dans le code.
Et quel est le mieux, si je veux en faire un avec une seule ligne mais qui rajoute une ligne dès que je met quelque chose dans la ligne précédente ? (pas très clair ça).
Ex : au début, il y a une ligne.
Si je met quelque chose dans la 1ere ligne, ça me rajoute une 2eme ligne.
...
Euh ... quelle est la différence entre datagrid et flexgrid ?
Apparement la flexgrid ne prend pas en compte les valeurs entrée par l'utilisateur mais il peut les prendre en compte avec un ajout dans le code.
Et quel est le mieux, si je veux en faire un avec une seule ligne mais qui rajoute une ligne dès que je met quelque chose dans la ligne précédente ? (pas très clair ça).
Ex : au début, il y a une ligne.
Si je met quelque chose dans la 1ere ligne, ça me rajoute une 2eme ligne.
...
Je n'utilise le datagrid et le flexgrid qu'en statique, pour affichage. Et en fait j'utilise le Flexigrid pour ça, pour ne pas autoriser la saisie.
Mais effectivement tu peux l'utiliser en ajoutant un peu de code pour pouvoir faire des saisies. Je ne l'ai jamais fait, mais tu peux trouver des exemples sur : https://vb.developpez.com/faq/?page=Controles et sur https://codes-sources.commentcamarche.net/
Pour ajouter une ligne, le flexgrid est plus facilement manipulable. Dans l'évènement Click() du flexgrid tu peux faire:
MSFlexGrid1.Rows = MSFlexGrid1.Rows + 1
Cette propriété n'existe pas dans le datagrid.
;o)
PS: si l'eau est assez fraîche, pas de glaçon dans le pastaga .. :o))
Mais effectivement tu peux l'utiliser en ajoutant un peu de code pour pouvoir faire des saisies. Je ne l'ai jamais fait, mais tu peux trouver des exemples sur : https://vb.developpez.com/faq/?page=Controles et sur https://codes-sources.commentcamarche.net/
Pour ajouter une ligne, le flexgrid est plus facilement manipulable. Dans l'évènement Click() du flexgrid tu peux faire:
MSFlexGrid1.Rows = MSFlexGrid1.Rows + 1
Cette propriété n'existe pas dans le datagrid.
;o)
PS: si l'eau est assez fraîche, pas de glaçon dans le pastaga .. :o))
oula, c'est chiant à faire ... il faut un contrôle ADODC (composant -> Microsoft ADO Date Controls x.x) qu'il faut configurer (clique droit -> propriétés ...). Tu peux le mettre invisible. Ensuite il faut lier le datagrid au controle ADODC avec la propriété DataSource et affecter la table ou la requête Access à la propriété DataMember ...
Pas top à faire.
Pas top à faire.
Ou alors je fais un champs de texte qui récupère ce que j'écris et qui l'ajoute soit à un datagrid, soit à un flexgrid.
Mais alors à quoi te sers le datagrid ou le flexgrid ?
Je ne comprends pas bien. Tu peux très bien te faire un tableau uniquement avec des champs texte, sans devoir passer par un datagrid ou un flexgrid ... quel en est l'intérêt ? c'est ça que je ne pige pas bien ...
mais bon je te l'ai dit, j'ai pas les yeux en face de trous et mon neurone est en grève depuis ce matin ... :-s
mais bon je te l'ai dit, j'ai pas les yeux en face de trous et mon neurone est en grève depuis ce matin ... :-s