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   -
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.
A voir également:

284 réponses

MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention   147
 
Une seule chose à dire, les concepteur de VB sont des tarés.

Tu peux avoir des cases à cocher dans un flexgrid mais dès qu'il s'agit d'y mettre 3 pauvres lettres c'est la merde.

Ca saouuuuuuuuuuule.

Ps : bon en fait, je crois que je vais faire un champ de texte où je mettrais par ex a et b.
Et un flexgrid qui m'affichera :
a
b ...
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
tu peux les mettre avec le code, le flexgrid, n'est pas fait à l'origine pour saisir de données ...

zen ... inspirez .... expirez ...

;o)
0
MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention   147
 
Je crois que je m'emmêle un peu.
Je n'utilise pas un flexgrid mais un datagrid. :)

Je ne peux pas les mettre avec le code. Parce que ça sera au user de remplir le tableau.

Je sais, je suis tordu. Niark niark niark.
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
ca fait un bagne que j'ai plus trop utilisé ça ... me faudrait que je fouille dans mes archives pour trouver un truc qui ressemble à ce que tu cherches. Mais là ... pas trop le temps ... tu es pressé ?

PS: Si le café ou le thé de Rikki pouvait être un plus fort et pas ressembler à de l'eau légèrement teinté ...

;o)
0
Rikkunter Messages postés 6023 Date d'inscription   Statut Membre Dernière intervention   180
 
Arrête... C'est de la drogue après...
Moi j'dis ça, c'est pour ton bien ;)
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204 > Rikkunter Messages postés 6023 Date d'inscription   Statut Membre Dernière intervention  
 
aaaaaaahhhhhhhh enfin quelqu'un qui prend soin de ma santé .... si tu as des idées pour mon bien être, j'suis preneur aussi

;oP
0
Rikkunter Messages postés 6023 Date d'inscription   Statut Membre Dernière intervention   180 > Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention  
 
Par contre là c'est ptete de ma santé que je devrai prendre soin.
J'viens de voir que mon applic en Access est corrompue depuis midi, point de restauration de hier fonctionne pas, et pas fait de sauvegarde.....

J'en connais un qui va être content... *prend une corde x.u*
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204 > Rikkunter Messages postés 6023 Date d'inscription   Statut Membre Dernière intervention  
 
Si ma mémoire est bonne (et j'en doute de plus en plus), n'y a t-il pas une fonction backup dans Access ? N'existe-elle plus, ou n'a-t-elle pas été activée ?

Il reste la solution d'exporter (ou d'importer) je sais plus, qui parfois permet de recupérer la base ... enfin pas toujours ... si on a de la chance ...

;o)
0
Rikkunter Messages postés 6023 Date d'inscription   Statut Membre Dernière intervention   180 > Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention  
 
Ben, euuhh..
J'ai fait ce qu'il m'a dit, enfin je suis allée voir mais ça donne pas grand-chose...
0
MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention   147
 
Salut.
Comment ça va bien ?

Alors quelque chose pour moi ? ^^
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
Hello ...

Bon j'arrive à peine et je suis à la bourre ... pas encore pris mon kawa .. :o)

Cha va béné, merci et toi ?

J'ai fouillé dans mes archives. J'ai pas pu prendre d'exemples parce que trop gros et liés à unebase Oracle ou SQL serveur ...

En fait je ne me servais du flexgrid que pour l'affichage. Je n'ai jamais fait de saisie directement dedans. Le flexgrid n'étant que le reflet de la table. J'avais des zones de saisie à part et à chaque validation, je mettais à jour le flexgrid, ce qui revient à ce que tu disais ... pour chaque colonne, une zone texte, un bouton de validation qui commande la mise à jour de la base et la mise à jour du flexgrid par une requête. Un peu comme un sous formulaire.

Ca va pas trop t'aider, mais je n'ai pas mieux ...

;o)
0
MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention   147
 
Moi cha va bien. :)

Le kawa dans une main et le clavier dans l'autre.

Boarf, ce n'est pas grave. Je continue comme j'ai commencé et pis voilà.
J'ai presque réussi d'ailleurs, il ne me reste qu'un petit truc à gérer et ça va le faire.
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
J'ai également jeté un oeil sur l'aide, mais par grand chose sur l'utilsation ...

Je vais quand même regarder sur vbfrance, il doit bien y avoir quelque chose la dessus. Ca peut toujours servir.

;o)
0
MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention   147
 
En fait j'ai encore une question.

Je me suis servi du code ci-dessous :
https://codes-sources.commentcamarche.net/

Pour ce qui est de la modif et de l'ajout c'est bon.
Mais je n'arrive pas à sélectionner les lignes.
Quand je charge les éléments de ma table, la première ligne est sélectionnée, et quand je rajoute un enregistrement, la dernière est sélectionnée.

Une idée ?
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
je n'ai pas acces au lien d'ici :s.

J'ai trouvé ça sur vbfrance ... ça à l'air pas mal : https://codes-sources.commentcamarche.net/

Que veux-tu dire par "je n'arrive pas à sélectionner les lignes" ?
0
MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention   147
 
Oula, je n'arrive pas à ouvrir ton lien. :(

Mais si tu ne peux pas ouvrir le mien, ça va être plus compliqué. ^^

En fait le code que je voulais te montrer, me permet d'ouvrir une table et d'insérer le contenu dans un DataGrid.
Ensuite, je peux rajouter une ligne à la suite et la modifier (ainsi que celle qui faisaient parties de la table).

Le code marche super bien, mais chez moi, je ne peux pas sélectionner les autres lignes pour les modifier.
Je ne peux modifier que la ligne que je viens d'ajouter.

Peut être qu'il n'y a qu'un petit truc à changer, mais je ne vois pas trop quoi. :S

Ps : j'apprécie beaucoup ton aide, mais je ne voudrais pas t'empêcher de travailler. xD
0
Rikkunter Messages postés 6023 Date d'inscription   Statut Membre Dernière intervention   180 > MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention  
 
(PS pour le lien : Suffit d'enlever le point qu'a mis Polux à la fin du link)

Oui oui je suis toujours là et je rode ;) 'jour Polux
0
MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention   147 > Rikkunter Messages postés 6023 Date d'inscription   Statut Membre Dernière intervention  
 
'tain j'avais même pas vu le point.

J'vais prendre un autre kawa pour me réveiller.
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204 > Rikkunter Messages postés 6023 Date d'inscription   Statut Membre Dernière intervention  
 
'jour Rikki ... déjà debout ??? :O))

Vous commencez tôt en Suisse ... un kawa ?

;o)

---
«Ce que l'on conçoit bien s'énonce clairement, Et les mots pour le dire arrivent aisément.» 
Nicolas Boileau
0
MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention   147 > Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention  
 
Elle n'aime pas ça. ^^

Un thé plutôt je crois.
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
j'ai pu ouvrir ton lien.

Sur le formulaire tu as le datagrid qui est lié au controle adoData, c'est lui qui permet de selectionner une ligne.
Je pense que tu dois faire un datagrid.Refresh quand tu fais une modif ... et/ou une data.Refresh pour réinitialiser l'objet.

Pour le boulot, je ne suis pas bousculé ce matin ... ;o)
0
MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention   147
 
Mwai, mais dans le code que je t'ai montré, il n'y a qu'un seul refresh lorsque l'on charge la table (ce que j'ai également fait).

Mais euh ... cette partie sert à quoi ?

Private Sub grid_RowColChange(LastRow As Variant, ByVal LastCol As Integer)
On Error GoTo err
    
    If IsNull(Me.adoData.Recordset!Nom) Then
        Me.txtNom.Text = ""
    Else
        Me.txtNom.Text = (Me.adoData.Recordset!Nom)
    End If

    GoTo fin
    
err:
    MsgBox "Erreur 1"
fin:
End Sub


Ps : tu fais quoi comme boulot ? ^^
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
ce bout de code rajoute une ligne et la remplit avec le recordset ...

Je suis développeur informatique ... et en ce moment je suis chef de projet et éventuellement développeur dans une boîte en haute Normandie (je suis de Toulouse).

;o)
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
mais dans le code que je t'ai montré, il n'y a qu'un seul refresh celui là initialise de controle data, l'équivalent de MoveFirst en SQL.
0
MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention   147
 
Ah ok. ;)

J'ai trouvé mon erreur.
Comme un c**, j'avais mon adodc en enabled = false. -_-"
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
arfffff ..... t'inkiète qu'ai bugué 2 jours sur un contrôle locked, et pas seulement moi ... en fin de compte on a cassé le code et tout refait ... pour rien ... le contrôle étant toujours locked ... et là on s'en est apperçu. 3 jours de retard pour ça, ça fait chère l'étourderie.

;o)
0
MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention   147
 
J'ai encore une question. :D

Si j'suis chiant vous pouvez le dire.

Est ce qu'il est possible de rajouter une scrollbar verticale sur un datagrid ? (pis comment on fait, si c'est possible) ^^

Merci.
0
Rikkunter Messages postés 6023 Date d'inscription   Statut Membre Dernière intervention   180
 
Si j'suis chiant vous pouvez le dire.

Tu l'es.


Fallait pas me donner une telle occasion :D
0
MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention   147 > Rikkunter Messages postés 6023 Date d'inscription   Statut Membre Dernière intervention  
 
Oui, mais ça je le savais, ça ne m'aide pas beaucoup beaucoup. :S
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
la scrollbar se met automatiquement ...

;o)
0
MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention   147
 
Pas chez moi. :P

P'tet une option mais je ne vois pas laquelle. :(
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
tu cliques droit sur le controle et ensuite propriété, puis l'onglet fractionnement et tu mets ScrollBar à 4- dgbAutomatic.

0
MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention   147
 
J'avais ça. :(

Mais mon Datagrid était dans une frame. -_-"
Mantenant les scrollbar sont là, mais je ne peux pas m'en servir. Elle sont grisées. xD
0
MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention   147 > MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention  
 
Encore un enabled qui me bloquait.

Bon je crois que j'ai réussi.

Grâce à vous deux. Merci. ^^
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
Bravo tu deviens un pro de VB ... ;o)
Bon app a vous deux
0
MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention   147
 
Bon app' à vous également.
0
Rikkunter Messages postés 6023 Date d'inscription   Statut Membre Dernière intervention   180 > MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention  
 
Pour pas faire comme tout le monde : J'espère que vous avez bien mangé.

Pas le courage de recommencer mon applic Access, mmmh...
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204 > Rikkunter Messages postés 6023 Date d'inscription   Statut Membre Dernière intervention  
 
vi merci ... c'était pas dégueux pour une fois ...

Mais je croyais que c'était juste Access qui avait un blème et qu'une réinstallation suffisait !!!

J'ai du zappé un bout ou le café pas assez fort ...

:oS
0
Rikkunter Messages postés 6023 Date d'inscription   Statut Membre Dernière intervention   180 > Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention  
 
Non non, c'est bien mon applic qui est corrompue -- comment elle a été corrompue, je sais pas.
J'ai un backup qui date de mars, et Access fonctionne parfaitement bien.

Ca m'apprendra à pas faire de sauvegardes...
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204 > Rikkunter Messages postés 6023 Date d'inscription   Statut Membre Dernière intervention  
 
pas d'bol ... c'est balaud ...

Faut pas se décourager ... et les erreurs sont toujours un bon moyen d'apprendre et de progresser.

;o)
0
MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention   147
 
Je suis désolé de revenir à quelque chose d'important (patapey Rikk, patapey ...). :D

Quand on met des chose dans combo_change, les choses en question seront prises en compte à quelle moment ?
Lors d'une modification de la valeur du combo ?

Parce que j'ai 3 combo.
J'ai mis le premier en accessible et j'ai bloqué les 2 autres.
Et j'ai mis (pour bloquer le 1er et libérer le 2eme):

Private Sub Combo1_Change()
        Combo2.Enabled = True
        Combo1.Enabled = False
End Sub


Mais apparemment ce n'est pas ça. ^^
0
superthevip Messages postés 4768 Date d'inscription   Statut Contributeur Dernière intervention   1 452
 
café? ^^
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204 > superthevip Messages postés 4768 Date d'inscription   Statut Contributeur Dernière intervention  
 
salut,

Bien fort avec un sucre, stp

:O))
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
En principe, la fonction Change() intervient dès que l'on tape ou change une valeur dans la zone texte de la combo (ou autres contrôles ayant cette fonction).

Dès que le contrôle a le focus, pour toute modification du contenu du contrôle, le code derrière est exécuté.

Je ne sais pas si c'est bien clair comme explication ...
0
MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention   147
 
Si je comprend bien, si je modifie la valeur de ma combo, le code inséré dans combo_change devrait s'effectuer.

Alors j'ai un problème. ^^

Parce que par défaut la valeur de ma combo est nulle. Et lorsque je change sa valeur, il ne se passe rien.

EDIT : ça fonctionne si j'écris dans ma combo !
Mais je veux que ça fonctionne si je change la valeur.
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
Alors c'est sur l'évènement Click() ...

0
MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention   147
 
Impec. Je t'adore. :)
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204 > MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention  
 
je fais toujours cet effet ... :DDDDD
0
MrSlave Messages postés 2587 Date d'inscription   Statut Membre Dernière intervention   147
 
J'suis pas encore un pro je crois, j'ai encore besoin de toi. ^^

Toujours avec mes combo liées. Bon quand je sélectionne une valeur sur la combo1 elle devient inactive et la 2eme devient active. Mais je ne veux pas qu'elle me revoit toutes mes valeurs de la table.

Je m'explique :
- une séquence est composée d'un id, d'un verbe, d'un sujet et d'un complément.
- quand je sélectionne le verbe (combo1), je ne dois afficher que les sujet qui correspondent au verbe sélectionné. (donc le même id)

J'ai donc fait :
Dim sujet As ADODB.Recordset
        Dim query2 As String
        Dim query4 As String
        Dim Vrai As Boolean
         
        Combo2.Enabled = True
        Combo1.Enabled = False
        
        query4 = "Select id_std from ent_std where lib_verbe =" & Combo1.Text
        query2 = "SELECT LIB_Sujet FROM ENT_STD where id_std =" & query4
        Set sujet = New ADODB.Recordset
        
        Vrai = ModuleBdD.OpenRecordset(query2, sujet)
         Vrai = ModuleBdD.RSLirePremier(sujet)
         While Vrai = True
         Combo2.AddItem sujet.Fields(0)
         Vrai = ModuleBdD.RSLireSuivant(sujet)
        Wend


Là je l'ai fait en 2 requêtes :
- je récupère l'id de l'enregistrement contenant le verbe
- je récupère les sujets donc l'id correspond à celui du verbe.

J'espère que c'est assez clair. ^^
0