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
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 ...
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 ...
tu peux les mettre avec le code, le flexgrid, n'est pas fait à l'origine pour saisir de données ...
zen ... inspirez .... expirez ...
;o)
zen ... inspirez .... expirez ...
;o)
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)
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)
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)
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)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
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)
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)
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)
Je vais quand même regarder sur vbfrance, il doit bien y avoir quelque chose la dessus. Ca peut toujours servir.
;o)
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 ?
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 ?
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" ?
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" ?
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
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
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)
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)
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 ?
Ps : tu fais quoi comme boulot ? ^^
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 ? ^^
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)
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)
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.
Ah ok. ;)
J'ai trouvé mon erreur.
Comme un c**, j'avais mon adodc en enabled = false. -_-"
J'ai trouvé mon erreur.
Comme un c**, j'avais mon adodc en enabled = false. -_-"
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.
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.
tu cliques droit sur le controle et ensuite propriété, puis l'onglet fractionnement et tu mets ScrollBar à 4- dgbAutomatic.
Bravo tu deviens un pro de VB ... ;o)
Bon app a vous deux
Bon app a vous deux
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):
Mais apparemment ce n'est pas ça. ^^
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. ^^
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 ...
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 ...
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.
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.
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 :
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. ^^
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. ^^