Тёмный

Gérer l'approvisionnement des stocks en VBA Access 

Formations Excel, Access et bien d'autres
Подписаться 104 тыс.
Просмотров 50 тыс.
50% 1

Application Access permettant de mettre à jour en base de données les quantités des stocks des références produits sélectionnés par une liste déroulante. Nous construisons ici une petite console de gestion des approvisionnements des produits d'un magasin par le biais d'un formulaire Access. Une liste déroulante est directement liée aux références produits de la table Catalogue dont elle se sert de source de données. Un code Visual Basic Access permet de récupérer tous les éléments correspondant au code article sélectionné, grâce à une requête SQL de sélection. Ce sont les objets VBA Database et Recordset qui permettent de parcourir les enregistrements ainsi sélectionnés pour ensuite les resituer et les afficher sur le formulaire. Enfin, un dernier code VBA permet d'exécuter une requête SQL Update avant de mettre à jour les quantités d'articles selon les références choisies.
#FacturationAccess
#GestionStocks
#ApprendreVBA
#VbaAccess
Base de données et formation détaillée sur le site :
www.bonbache.f...

Опубликовано:

 

19 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 140   
@abdelazizchelbi7531
@abdelazizchelbi7531 7 лет назад
Comme toujours, cher professeur, vous excellez parfaitement dans ce tuto. En effet, une présentation courte, des explications détaillées, un programme simple et parfait ... Que pourrais-je dire de plus? Un grand bravo, un chapeau bas, un pouce haut et un Hourraaaaah fort
7 лет назад
Et une fois de plus un grand merci à vous mon Cher Abdelaziz pour m'honorer de vos retours. Je suis heureux que vous appréciez ce petit tuto à vocation utile et professionnelle me semble-t-il pour aiguiller les professionnels désireux de tenir leurs stocks à jour à l'aide d'un programme simple.
@abdelazizchelbi7531
@abdelazizchelbi7531 7 лет назад
"pour aiguiller les professionnels désireux de tenir leurs stocks à jour à l'aide d'un programme simple" Voilà la preuve et le secret de votre réussite, cher professeur. En effet, vous songez toujours à venir en aide à tous (VOUS ETES UN ANGE) et vous présentez des solutions simples (VOUS ETES UN GENIE) en sacrifiant beaucoup de temps et d'énergie pour nous satisfaire (VOUS ETES SUUUUUUUUPEEEEEEEER)
@sofianesof6032
@sofianesof6032 5 лет назад
Bravo...Mr Rossetti Stéphane Merci, d'avoir partagé avec nous votre passion pour l'enseignement,votre soutien,votre implication et votre expérience. J'ai grandement apprécié vos cours qui m'ont été précieux et m'ont permis de progresser dans access Merci encore d'avoir enrichi mes connaissances.
5 лет назад
Bonjour Sofiane. Votre témoignage fait chaud au coeur. Je vous remercie infiniment d'avoir pris le temps de la faire.
@sofianesof6032
@sofianesof6032 5 лет назад
avec plaisir Mr Rossetti Stéphane
@GeorgeBander
@GeorgeBander 7 лет назад
Bonjour cher professeur !! Un super tuto encore une fois, et move first "prendre l'initiative" porte bien son nom !! J'ai hâte de voir le suivi des stocks, pendant que je m'entraîne avec cet "Approvisionnement" si parfaitement réalisé !! Encore merci et bonne journée !!
7 лет назад
Bonsoir Gérard, ça fait plaisir de vous retrouver en cette veille de Week-End. Il va me falloir un peu plus de temps avant de livrer la prochaine formation sur la facturation clients avec gestion des stocks, soit les quantités articles en sortie cette fois-ci, car le processus est légèrement plus complexe. Mais j'espère pouvoir la livrer en fin de semaine prochaine. Un grand merci comme toujours pour vos chaleureux messages et très bon Week End à vous.
@fahdbadr4715
@fahdbadr4715 5 лет назад
vraiment remarquable professeur!! j'admire vos cours!!
5 лет назад
Merci infiniment Fahd Badr
@jacques-harielango1653
@jacques-harielango1653 5 лет назад
Merci beaucoup, vos explications simplifient tout, c'est impressionnant.
5 лет назад
Bonjour Jacques-Hariel, merci beaucoup pour votre message fort agréable en retour.
@jacques-harielango1653
@jacques-harielango1653 5 лет назад
M.@ , j'ai une question svp, quand je lance l'exécution, tout s’arrête sur la ligne ci-dessous, Access refuse catégoriquement la syntaxe "'" à la fermeture de SELECT. J'ai bien sélection la référence Microsoft ActiveX...ect Avez-vous une idée? Set ligne = base.OpenRecordset("SELECT Designation, Quantite FROM Magasin WHERE Designation='"&List_ref.Value&"'", dbOpenDynaset) Merci
5 лет назад
Votre syntaxe me semble correcte dans la mesure où vous n'avez pas oublié les simples côtes pour encadrer la variable pour l'égalité avec le champ de la table. Le manque d'espace dans la concaténation me chagrine mais je pense que VBA sait dissocier. Voici le code de la procédure : Private Sub liste_ref_Change() Dim ligne As Recordset: Dim base As Database Set base = Application.CurrentDb Set ligne = base.OpenRecordset("SELECT Designation, Quantite FROM Catalogue WHERE Code_article='" & liste_ref.Value & "'", dbOpenDynaset) qte_maj.Value = 0: qte_cours.Value = 0 ligne.MoveFirst designation.Value = ligne.Fields("Designation").Value qte_cours.Value = ligne.Fields("Quantite").Value qte_maj.SetFocus ligne.Close base.Close Set ligne = Nothing Set base = Nothing End Sub
@jacques-harielango1653
@jacques-harielango1653 5 лет назад
Bonjour M. Rossetti, problème résolu, Merci.
5 лет назад
Félicitations Jacques-Hariel.
@completementbarge2854
@completementbarge2854 3 года назад
Bonjour Prof, D'abord un grand merci pour tes explications fluides et simples mais surtout pour le temps que tu prends pour nous en commentaire. en effet j'ai eu un soucis en voulant adapter la console proposé dans ce cours mais dans les commentaires tu as donné la solution et ça m'a débloqué de 3 semaines de recherche en boucle. Encore Merci
3 года назад
Bonjour Oscar. Je suis vraiment ravi de ce témoignage. C'est un très grand plaisir et je te remercie beaucoup d'avoir pris le temps de le poster.
@dewesler
@dewesler 7 лет назад
Bonjour monsieur Rossetti Un super tuto comme TJS
7 лет назад
Bonjour Alain, merci infiniment pour ce retour.
@ktoufik3047
@ktoufik3047 7 лет назад
Un grand merci pour cette explication
7 лет назад
Je vous en prie, merci à vous pour ce retour.
@romlef526
@romlef526 7 лет назад
Bonjour et merci, très interessent comme tuto !
7 лет назад
Bonjour Rom Lef, content de vous "revoir", merci beaucoup pour votre message.
@frogeregis
@frogeregis 6 лет назад
Merci Stéphane
6 лет назад
Avec plaisir François et merci pour votre retour.
@aprenderaprender8505
@aprenderaprender8505 3 года назад
J'admire, j'admire !
3 года назад
Merci beaucoup.
@MrMicpid
@MrMicpid 5 лет назад
Merci pour cet excellent tuto, je voudrai savoir si on pouvait faire la même chose avec l'approvisionnement du stock pour avoir un historique des entrées
5 лет назад
Bonjour Michel et merci beaucoup pour votre message en retour. Concernant votre question, oui à n'en point douter, il faut prévoir une table en conséquence avec les dates des entrées notamment. Ce champ date pourrait d'ailleurs être calibré pour inscrire la date du jour par défaut. Ensuite il suffit d'exploiter un formulaire comme celui-ci, exécutant des requêtes de mise à jour ou d'insertion, comme le propose d'ailleurs cette formation : www.bonbache.fr/formulaire-d-ajout-d-enregistrements-avec-access-346.html
@yasserfarrel7679
@yasserfarrel7679 3 года назад
Bonjour Professeur , j'ai un petit soucis j'ai une base de donnée articles que je veut insérer dans le catalogue accès mais tous mes articles n'ont pas pu être coller certains on été envoyé dans une table d'erreurs , alors comment y remédier car j'aimerai me servir de cette application pour gérer mes approvisionnement. cordialement.
3 года назад
Bonjour Yasser. Certains champs d'enregistrements ne doivent pas respecter les normes imposées par votre table de destination. Il peut s'agir de la taille des champs par exemple, des règles de validité ou encore du type de données. Je vous conseille de vérifier les réglages de votre table pour comprendre pourquoi certaines données n'ont pu être importées.
@isfahanilaila7919
@isfahanilaila7919 3 месяца назад
merci infiniment professeur, super tutoriel, SVP la référence library activeX data objects 6.1 , comme vous le dite, dépend du windows installé , or moi, j'ai windows 11 , et au lieu de récupérer La désignation et la quantité du produit et les affichées dans leur liste déroulante, un message d'erreur s'affiche.🙏🙏🙏🙏🙏🙏
3 месяца назад
Bonjour, peu importe la version de Windows et de la librairie 6.1 ou upgradée, le programme doit fonctionner. L'objectif de ces Dll est de porter les applications au travers des années. Je pense plus à une petite anomalie dans la reproduction du code VBA.
@martingouri-bi245
@martingouri-bi245 4 года назад
Bonjour Rosseti je vous suis depuis 2 ans et j’apprécie beaucoup votre pédagogie. Je voudrais que vous fassiez une petit base de donnée pour gérer les salaires Merci d'avance
4 года назад
Bonjour Martin, c'est un plaisir et je vous remercie beaucoup pour votre intérêt et votre fidélité. C'est une formation que j'ai déjà notée dans celles que je dois monter. Mais beaucoup d'autres sont prévues avant elle. Donc je ne peux vous promettre de la mettre en place rapidement.
@martingouri-bi245
@martingouri-bi245 4 года назад
@ Merci beaucoup et je suis patient
@sedikyahiaoui4018
@sedikyahiaoui4018 3 года назад
Bravo Mr.Stéphanie ,juste uen petite question : pour développer une application gestion de stock & facturation est ce que sera mieux la dévlopper en Access ou Excel.Merci
3 года назад
Bonjour Sedik. Merci beaucoup pour ce message. Sans aucune hésitation, le choix doit se porter sur Access.
@sedikyahiaoui4018
@sedikyahiaoui4018 3 года назад
Mr.Stéphanie est ce que l'application developpé en Access est modifiable (on peut ajouter des champs a la facture comme Remise-TVA-...) ?
3 года назад
​@@sedikyahiaoui4018 Oui bien sûr. Une fois que vous le maîtrisez, Access est bien plus souple que n'importe quel autre logiciel. Il offre tous les modes conception pour intervenir sur les objets en cours ou après développement.
@kadnacer7571
@kadnacer7571 5 лет назад
Bonjour Mr Rossetti Merci pour ce tuto ou j'ai trouvé des réponses à plusieurs questions qui me tourmentés . J'ai entendu parler d' une fonction access VBA nommée dlookup utilisé pour rapatrier des informations. Est il possible de l'utiliser dans ce cas au lieu de déclarer un recordset.
5 лет назад
Bonjour Nacer et merci pour votre message. Oui tout à fait et excellente question. Cette fonction se nomme RechDom dans sa traduction française, elle permet entre autres fonctionnalités, de contourner le VBA. Voici deux exemples où elle est utilisée : www.bonbache.fr/enrichir-un-formulaire-avec-plusieurs-listes-deroulantes-395.html www.bonbache.fr/valider-la-facture-du-client-avec-access-399.html
@jackjozelon9817
@jackjozelon9817 4 года назад
Bonjour Mr Rossetti, bravo pour vos cours. J'aimerai les suivre du premier au dernier sans en oublier un. Ne pourriez vous les numéroter pour que l'on soit sûr de ne pas sauter un cours ? Encore une fois, bravo!
4 года назад
Bonjour Jack et merci beaucoup pour votre message et vos compliments. Je vous ai répondu à ce sujet dans un autre post. Toutes les formations sont organisées dans des playlist rigoureusement cadencées. Concernant l'apprentissage de VBA Access, vous trouverez toutes les vidéos dans l'ordre à cette adresse : ru-vid.com/group/PLpQBnWleLAavvmUsXIB2Zrb88frDr_OQH
@bienvenuesoubabenawan
@bienvenuesoubabenawan 5 лет назад
Bonjour monsieur Stéphane, je suis entrain de coder la gestion d'approvisionnement des stocks en suivant le tutoriel. Et j'ai un message d'erreur qui s'affiche lorsque j'exécute comme suit: Erreur d'exécution '3061' Trop peu de paramètres.1 attendu Pourriez-vous m'expliquer ce qui m'a échappé? Dans l'attente d'une réponse, je vous remercie!
5 лет назад
Bonjour Monsieur, vous avez simplement un problème dans la syntaxe de la requête Sql exécutée. Veillez à bien alterner les simples et doubles côtes lorsqu'il s'agit de valeurs textuelles. Reprenez l'endroit précis dans la vidéo. J'insiste sur ce point.
@MrEcogez
@MrEcogez 4 года назад
Bonjour et merci pour cet excellent tuto. J'ai simplement un petit problème quand j'appuie sur le bouton valider la mise à jour du stock, le message s'affiche bien avec la nouvelle quantité, mais dans ma table catalogue la quantité ne s'actualise pas. Pouvez-vous m'aider svp. Un grand merci !!!
4 года назад
Bonjour et merci pour votre message. Si l'actualisation ne se produit pas dans la table, cela signifie simplement qu'il y a une erreur au niveau de la requête Update. Ce lien est celui de la formation détaillée : www.bonbache.fr/gerer-l-approvisionnement-des-stocks-en-vba-access-215.html Toutes les syntaxes des requêtes y sont données.
@lpinfo100
@lpinfo100 5 лет назад
Bonjour, super tutoriel, je voudrai savoir si c’est possible de saisir les stocks avec une douchette ?
5 лет назад
Bonjour Lionel, oui tout à fait, beaucoup le font. Ensuite, il faut se référer à la doc du matériel pour la communication, mais c'est relativement simple d'après ce que j'ai compris. Merci beaucoup pour votre message.
@christophelanglois6731
@christophelanglois6731 3 года назад
Bonjour Stéphane, J'espère que je vais être clair dans mes explications ... 1/ Chaque référence de mon stock peut avoir plusieurs lots différents (jusqu'à 4) et eux-mêmes référencés avec un numéro qui leur est propre. Ma question est la suivante : Lorsque je sors une pièce d'un lot et qu'il n'est pas du Lot 1 (car à 0) comment puis-je mettre le stock du lot correspondant à jour et non pas déduire le lot de "référence" (Lot 1). Je suis parti sur la base que si le Lot 1 est à 0, je sors ma pièce du Lot 2 et si le Lot 2 est 0, je sors la pièce du Lot 3, etc... mais dans mon code, je déduis toujours le Lot 1, me trouvant ainsi à une quantité stock négative. 2/ De même que si je sors une référence dans le même formulaire à 2, 3 reprises voir plus, comment sur ma table temporaire, je peux avoir qu'une seule ligne regroupant la quantité cumulée de chacune de ces saisies et donc ne pas avoir 2, 3, 4 lignes de la même référence avec des quantité différentes. Voici mes lignes de code : Private Sub Bt_Valider_sorties_Click() Dim Ligne As Recordset: Dim base As Database Dim requete As String Dim ChampReference As String: Dim ChampQuantitelot1 As Integer If (ChampAssocierProjet.Value "") Then Set base = Application.CurrentDb Set Ligne = base.OpenRecordset("SELECT * FROM T_Detail_temp", dbOpenDynaset) Ligne.MoveFirst Do ChampReference = Ligne.Fields("Reference").Value ChampQuantitelot1 = Ligne.Fields("Quantite").Value requete = "INSERT INTO T_Detail_sortir_pieces (N°_Projet_det,Ref_det,Designation_det,Quantite_det,Lot_det) VALUES ('" & ChampAssocierProjet & "','" & ChampReference & "','" & ChampDesignation & "'," & ChampQuantitelot1 & ",'" & ChampLot1 & "')" base.Execute requete requete = "UPDATE T_Articles SET Quantite_Lot_1 = Quantite_Lot_1 - " & Int(ChampQuantitelot1) & " WHERE Reference='" & ChampReference & "'" base.Execute requete Ligne.MoveNext Loop Until Ligne.EOF Ligne.Close base.Close Set Ligne = Nothing Set base = Nothing purger_table DoCmd.Close acForm, "F_Sortir_piece", acSaveYes DoCmd.OpenForm "F_Sortir_piece" End If End Sub Merci Ô grand gourou du codage... Christophe.
3 года назад
Bonjour Christophe. Je vais vous répondre très vite. Je suis désolé, j'ai lu votre message en transversal car je reçois de très nombreuses sollicitations et aujourd'hui, je n'ai que très très peu de temps. Lorsque vous sortez une référence d'un lot, vous devez mémoriser ce lot en variable. C'est ainsi que la requête Sql de mise à jour pourra déduire du bon sans altérer les autres.
@christophelanglois6731
@christophelanglois6731 3 года назад
@ Merci pour votre légendaire réactivité. Serait-il possible, lorsque le temps vous le permettra, de poster un exemple de code pour cette demande, merci Stéphane.
3 года назад
​@@christophelanglois6731 très honnêtement, cela va m'être compliqué Christophe et j'en suis désolé. Comme je vous le disais, les demandes abondent et je suis obligé de faire des coupes franches si je veux continuer de faire des propositions sur de nouveaux sujets.
@christophelanglois6731
@christophelanglois6731 3 года назад
@ je comprends pas d’inquiétude. Merci quand même pour votre réponse et pour la transmission de vos connaissances. Bon courage et prenez soin de vous 🙏🏻
3 года назад
@@christophelanglois6731 Merci beaucoup mon Cher Christophe.
@ouaridjamel4612
@ouaridjamel4612 3 года назад
merci pour l'information sa marche impeccable mais je voudrai savoir et le champs quantités et pas de types numérique mais monétaire comment le mètre ajour avec la même procédure
3 года назад
Bonjour Djamel et merci pour votre message. C'est simplement une question de formatage du champ et du contrôle sur le formulaire. Ensuite, il faut aussi adapter le type de données pour accepter les décimales.
@benoittossavi266
@benoittossavi266 3 года назад
Bonjour Professeur, Je vous remercie beaucoup. J'ai une question, comment faire pour avoir une historicité des approvisionnement de stock à tout moment dès que le besoin se fait sentir? Merci
3 года назад
Bonjour Benoît. Merci pour ce message. Il suffit de créer une table historique à alimenter en même temps que les stocks. Elle doit proposer un champ date auto pour le traçage et ne doit enregistrer que les nouveaux approvisionnements avec un classique insert into, sans oublier bien sûr le champ des références pour éventuellement conserver une liaison naturelle avec la table mère.
@benoittossavi266
@benoittossavi266 3 года назад
@ Merci Professeur je peux avoir l'écriture du code.Merci
3 года назад
@@benoittossavi266 Il s'agit simplement d'adapter celui de cette formation dans cette nouvelle table en fonction de ses champs et a exécuter en même temps que l'autre requête.
@benoittossavi266
@benoittossavi266 3 года назад
@ Bonjour Professeur; je vais l'essayer. Merci
@Espoir2210
@Espoir2210 4 года назад
Est-ce pour la creation d'un horaire on peut procéder pareillement lorsqu’on attribue une salle oudu materiel a un cours et du coup on doit le soustraire de l'inventaire de la journée ?? ou on peut proceder autrement ??
4 года назад
Bonjour Kal Ad. Oui tout à fait, le procédé est le même dans la mesure où les tables sont bien conçues et reliées pour permettre les nouvelles entrées comme nous le faisons dans ce cas pratique.
@Espoir2210
@Espoir2210 4 года назад
@ merci beaucoup pour votre réponse ! Je suis vraiment nouvelle dans le.domaine ... Pour la modélisation j'ai utilisé la.méthode.merise mais pour les.boucles de recherche et les conditions a respecter ca va être un défi !!
4 года назад
@@Espoir2210 Je vous en prie Kal Ad. Si vous avez le temps de vous former sérieusement et minutieusement, je vous conseille de suivre la Playlist sur les exercices Access : ru-vid.com/group/PLpQBnWleLAaszq4DAxtM4eHvFmOrq-4ij Vous serez capable de toutes les prouesses et ce, sans faire appel au code VBA.
@Espoir2210
@Espoir2210 4 года назад
@ merci beaucoup ! Certes je vais le faire 👍faites vous des formations à distance ??
4 года назад
@@Espoir2210 Je vous en prie Kal Ad. Non, je suis désolé, je ne propose que des formations en ligne comme celle-ci
@cathiaratsimba7992
@cathiaratsimba7992 6 лет назад
bonjour, merci pour le tuto, au moment d’exécuter le code il y a une erreur et ce cyntaxe devient en jaune: If (ref_X.Value "" And IsNumeric(qte_apres_MAJ.Value)) Then
6 лет назад
Bonjour Cathia, difficile de vous en dire plus sans connaître le message exact retourné par VBA.
@cathiaratsimba7992
@cathiaratsimba7992 6 лет назад
merci pour votre réponse, au moment ou j’appuie sur le bouton de mise a jour il y a un message "erreur d’exécution 424, objet requis"
6 лет назад
Cela signifie vraisemblablement que le nom de contrôle de formulaire que vous mentionnez dans votre code n'est pas le bon. Vérifier les noms que vous avez attribués et corrigez les dans le code, il fonctionnera.
@RogerMukadi-dx9zj
@RogerMukadi-dx9zj 9 месяцев назад
bonjour prof nous n'arrivons pas à bien voir ce que vous écrivez prière de zoomer un peu. Merci beaucoup
9 месяцев назад
Bonjour Roger. Je comprends. C'est noté.
@dawoudahmadou5083
@dawoudahmadou5083 5 лет назад
quand il s'agit d'une sorie d'un article dans le champs [qté après maj] allons mettre juste une soustration? est que c'est possible d'avoir d'avoir l'historique de toutes ces enregistrement dans une table (entre et sortie)?
5 лет назад
Bien sûr c'est le rôle d'Access, mais donc il faut prévoir une table pour archiver ces éléments et l'implémenter par requête Ajout à chaque occasion.
@dawoudahmadou5083
@dawoudahmadou5083 5 лет назад
@ merci Prof pour votre prompt réaction un tuto dans ce sens pourrait beaucoup aider car avec la création de requête d'ajout ça devient un peu compliqué. Car moi je pensais deux table qui devaient contenir d'un côté les opérations d'entrée et de l'autre la sortie. Merci pour ce que vous faites pour nous !
5 лет назад
Deux tables, c'est trop Monsieur. Je propose déjà beaucoup de formations à ce sujet, pour implémenter les tables par requêtes dynamiques d'ajout.
@dawoudahmadou5083
@dawoudahmadou5083 5 лет назад
@ okay je vais parcourir vos vidéos
@cercellettimickael2880
@cercellettimickael2880 2 года назад
Bonjour, j'ai beau retaper les codes pour l'approvisionnement le formulaire me met " #Nom ? " dans la liste déroulante . j'ai tapé ce code suivant le cours pourtant toujours l'erreur. Private Sub liste_ref_Change() Dim ligne As Recordset: Dim base As Database Set base = Application.CurrentDb Set ligne = base.OpenRecordset("SELECT Designation,Quantite FROM Catalogue WHERE Code_article="" & liste_ref.value & """, dbOpenDynaset) qte_maj.Value = 0: qte_cours.Value = 0 ligne.MoveFirst Designation.Value = ligne.Fields("Designation").Value qte_cours.Value = ligne.Fields("Quantite").Value qte_maj.SetFocus ligne.Close base.Close Set ligne = Nothing Set base = Nothing End Sub en tout cas merci pour ce cours qui est prometteur
2 года назад
Bonjour Mickaël. Vous avez un souci dans l'alternance des simples et doubles côtes de la syntaxe Sql de la requête. Vous écrivez ceci : Set ligne = base.OpenRecordset("SELECT Designation,Quantite FROM Catalogue WHERE Code_article="" & liste_ref.value & """, dbOpenDynaset) La vraie syntaxe est la suivante : Set ligne = base.OpenRecordset("SELECT Designation, Quantite FROM Catalogue WHERE Code_article='" & liste_ref.Value & "'",dbOpenDynaset)
@papylofondo111
@papylofondo111 6 лет назад
Magnifique et claire comme explication cependant, je n'arrive pas à réaliser une saisie semi automatique l'expression simple cote et double cote me complique
6 лет назад
Bonjour Papy Lofondo et tout d'abord merci pour votre retour. La simple côte se produit avec la touche 4 en haut du clavier tandis que la double côte est en fait le guillemet qu'on réalise avec la touche 3. Comme une expression SQL est écrite entre guillemets (Doubles côtes) et qu'elle doit être assemblée avec des variables de type texte à inscrire elles aussi entre guillemets, on utilise l'apostrophe (Touche 4), sinon SQL est VBA considèrent que l'expression est terminée, puisque l'on fermerait les guillemets. Sur le site bonbache, à la fin de la formation, je retranscris généralement l'intégralité du code.
@francklin508
@francklin508 4 года назад
Merci beaucoup poir ce tuto, vraiment ça m'aide beaucoup. Comment je fais pour le faire sur visual studio
4 года назад
Bonjour Francklin et merci beaucoup pour votre message. Sur Visual Studio, il n'y a pas de grand changement puisque le code est très similaire, si vous choisissez VB.Net par exemple.
@francklin508
@francklin508 4 года назад
@ merci à vous
4 года назад
@@francklin508 Je vous en prie.
@laetitiatinah6145
@laetitiatinah6145 4 года назад
Bonjour à vous et merci pour votre tuto, il m'ait vraiment utile. Cependant Lors de l'exécution de mon code il y a eu une erreur a propos des doubles quotes. quand je tape'"&list_code&"'", on me signale une erreur au niveau des quotes. que dois-je faire? Merci.
4 года назад
Bonjour Laetitia et merci pour votre message. Il s'agit en effet d'une information textuelle, elle doit être encadrée de simples côtes puisque nous utilisons déjà les doubles pour la syntaxe : "'" & list_code & "'" Je vous conseille aussi d'ajouter un espace avant et après chaque caractère de concaténation.
@laetitiatinah6145
@laetitiatinah6145 4 года назад
@ Merci de m'avoir répondu aussi tôt. Puis-je vous poser d'autres questions?
4 года назад
Dans la mesure où j'ai la réponse à vos questions et que je trouve le temps de vous répondre, oui. S'il s'agit de solutionner certains de vous soucis, je ne pourrai en revanche répondre présent et j'en suis désolé. Je reçois en effet de très nombreuses sollicitations chaque jour.
@laetitiatinah6145
@laetitiatinah6145 4 года назад
@ il s'agit de l'un de vos tutos où vous avez créé des références de produits avec des incrémentations particulières à chaque produit: RS001 RS002 BP001 BP002. j'aimerai savoir comment vous avez pu faire cette numérotation personnalisée? Merci de bien vouloir m'aider.
4 года назад
​@@laetitiatinah6145 Bonjour. Vous créez un champ Auto incrémenté (NumAuto) et dans sa propriété format, vous tapez le code suivant "RS"0. Pour équilibrer la longueur des codes, il peut être nécessaire d'utiliser une instruction conditionnelle dans un champs calculé de requête et je vais bientôt poster une vidéo à ce sujet.
@stephanejycanel-imhotectec4557
bonjour prof! très bonne vidéo. j'aimerais savoir si il aura possibilité de voir le stock en temps réel??? merci d'avance
7 лет назад
Bonjour Stéphane, je suis en train de monter une application de facturation avec gestion des stocks. Ensuite temps réel, oui mais non connectée, à moins que vous vouliez parler d'une application connectée à un serveur distant ?
@laetitiatinah6145
@laetitiatinah6145 4 года назад
bonjour Monsieur. j'ai bien aimé votre application. cependant j'ai quelque difficulté à exécuter le code. lorsque je veux l'exécuter on affiche une erreur du type 3021 et la bande jaune est sur ligne.MoveFirst j'ai bien suivi les recommandations sur le site ainsi que celles que vous avez faites dans les différents commentaires. Mais je ne trouve pas de solution. Pouvez vous m'aider svp. merci
4 года назад
Je vous ai répondu dans votre message suivant.
@vueringseric5482
@vueringseric5482 6 лет назад
Bonjour, encore merci pour ce super Tuto. j'ai suivi votre vidéo avec le texte comme soutien, tout fonctionne super mis à part l’enregistrement dans la base du nouveau stock après le clic de mise à jour. En effet, l'ancienne donnée quantité disparaît mais laisse le champ vide? j'ai bien sûr utiliser la méthode sur ma propre base, je pense avoir respecté les correspondance des codes.... Ce résultat d'erreur vous dit peut-être quelque chose... Merci de votre aide.
@vueringseric5482
@vueringseric5482 6 лет назад
je suis pas certain d'ailleurs que le champ soit vraiment vide, mais pas de chiffre visible en tout les cas
6 лет назад
Bonjour Eric et merci pour votre message. Si la valeur disparaît c'est que la requête Update tente d'insérer une donnée qu'il considère comme vide. Vous ne devez pas exploiter les côtes pour ce champ qui est numérique. C'est une possibilité d'erreur. Il y a une erreur dans le nom de la variable qui affecte ce résultat dans la requête, ou encore elle n'est pas affectée elle même donc considérée comme vide. Je vous suggère le pas à pas détaillé fourni à cette adresse : www.bonbache.fr/gerer-l-approvisionnement-des-stocks-en-vba-access-215.html, tout le code y est donné.
@vueringseric5482
@vueringseric5482 6 лет назад
encore dette erreur de simple cote pour un nombre...Pourtant bien expliqué dans la vidéo. Un grand merci et bonne continuation
6 лет назад
Je vous en prie Eric, content que vous ayez pu corriger le problème.
@guillaumemezeix976
@guillaumemezeix976 3 года назад
Pouvons nous relier ce formulaire à Power app une fois terminé ?
3 года назад
Bonjour Guillaume. Je ne connais pas suffisamment Power App pour vous répondre avec certitude. J'en suis désolé.
@guillaumemezeix976
@guillaumemezeix976 3 года назад
Aucun problème, merci quand même d'avoir pris le temps de répondre !
3 года назад
@@guillaumemezeix976 C'est la moindre des choses.
@laetitiatinah6145
@laetitiatinah6145 4 года назад
voici la synthase qui pose problème: Set ligne = base.OpenRecordset("SELECT Nom,Qte FROM Articles WHERE Code_article='" & list_code.Value & "'", dbOpenDynaset) le code_article est un champ calculé
4 года назад
Bonjour Laetitia, bien que vous ayez changé les noms de champs et de contrôle, la syntaxe me semble correcte. L'erreur 3021 est très claire. Après le filtre de la requête, il n'existe aucun enregistrement correspondant. Il faut bien vérifier les noms de vos champs et surtout votre contrôle list_code et son contenu au moment de l'exécution.
@laetitiatinah6145
@laetitiatinah6145 4 года назад
@ D'accord j'essaie et je vous reviens
@laetitiatinah6145
@laetitiatinah6145 4 года назад
@ le contenu de mon contrôle est la table Articles et les noms de mes champs sont les mêmes
4 года назад
​@@laetitiatinah6145 Le filtre de la requête ne fonctionne pas, c'est une certitude puisque le code ne parvient pas à se positionner sur le premier enregistrement. Donc il y a nécessairement un problème de concordance.
@laetitiatinah6145
@laetitiatinah6145 4 года назад
@ c'est quoi un problème de concordance ?
@KadiaFranckKouao-ms6hv
@KadiaFranckKouao-ms6hv 6 дней назад
Bonsoir a vous svp comment géré les versements de scolarité avec accès
6 дней назад
Bonjour, je suis désolé mais votre question est vague, difficile de vous apporter une réponse précise comme cela.
@makakila794
@makakila794 4 года назад
Lorsque je tape la commande entière de (SELECT Desigantion. Quantite FROM Catalogue WHERE code_article="'".dbopendyset) cela m'ecris erreur compilation attendu séparateur de liste ou)
4 года назад
Bonjour, il y a de nombreuses fautes dans votre expression. Il ne s'agit pas d'un point mais d'une virgule pour énumérer les champs. De plus la clause WHERE n'est pas aboutie : Set ligne = base.OpenRecordset("SELECT Designation, Quantite FROM Catalogue WHERE Code_article='" & liste_ref.Value & "'", dbOpenDynaset)
@makakila794
@makakila794 4 года назад
@ Merci beaucoup pour votre aide cela fonctionne
4 года назад
Je vous en prie Yoan.
@christophelanglois6731
@christophelanglois6731 3 года назад
Bonjour Stéphane, Au secours !!! je rencontre un problème que je n'arrive pas à résoudre depuis 2 jours !!! J'ai un message au lancement de ma macro (click sur valider) Message erreur 3075 Erreur de syntaxe (opérateur absent) dans l'expression " 35WHERE Reference='00160044' " Voici ma macro : Private Sub Bt_Valider_reception_Click() Dim requete As String: Dim base As Database If (ChampReference.Value "" And IsNumeric(ChampQuantiteApresReception.Value)) Then Set base = Application.CurrentDb requete = "UPDATE T_Articles SET Quantite_en_stock = " & ChampQuantiteApresReception.Value & "WHERE Reference='" & ChampReference.Value & "'" base.Execute requete MsgBox "Les stocks pour la référence : " & ChampReference.Value & ", ont correctement été mis à jour pour une quantité désormais égale à :" & ChampQuantiteApresReception.Value base.Close Set base = Nothing End If End Sub Merci de votre aide Christophe
@christophelanglois6731
@christophelanglois6731 3 года назад
J'ai fini par trouver en retapant l'intégralité de ma ligne de commande et tout fonctionne parfaitement. Merci encore pour vos formidables vidéos explicatives et intuitives sachant que je ne connais rien à la programmation VBA. Petit à petit l'oiseau fait son nid :-)
3 года назад
@@christophelanglois6731 Bonjour. Oui c'est simplement qu'il vous manquait un espace avant le WHERE, n'est ce pas ?
@christophelanglois6731
@christophelanglois6731 3 года назад
@ Absolument, merci pour votre réactivité !!!
@leothomas1858
@leothomas1858 6 лет назад
Bonjour j'ai un problème pouvez vous le faire a ma place car je suis bloqué à l'erreur 3021 après avoir lu et relu l'erreur est toujours la même
6 лет назад
Bonjour Théo, je vous suggère de suivre le pas à pas détaillé à cette adresse : www.bonbache.fr/gerer-l-approvisionnement-des-stocks-en-vba-access-215.html, il fournit tous les codes. Vous ne pouvez pas vous tromper.
@leothomas1858
@leothomas1858 6 лет назад
Cela fait 8 fois que je recommence et je ne trouve toujours pas. Il y a toujours cette fenêtre qui s'affiche avec "l'erreur 3021 aucun enregistrement en cours"
6 лет назад
Il s'agit probablement d'une erreur de syntaxe dans une requête SQL. Avez vous consulté la formation détaillée. Le code fonctionne parfaitement, l'application est aboutie et fonctionnelle.
@leothomas1858
@leothomas1858 6 лет назад
oui j'ai recommencer 4 fois
6 лет назад
Pouvez vous écrire la syntaxe de la requête SQL incriminée ?
Далее
Approvisionner les stocks en VBA Excel
20:35
Просмотров 9 тыс.
How to Create a Data Entry Form in Excel
34:30
Просмотров 281 тыс.
Saisie semi-automatique en VBA Access
26:26
Просмотров 18 тыс.
Extraire et filtrer les données en VBA Access
29:54
Просмотров 51 тыс.
GESTION DES STOCKS
44:20
Просмотров 47 тыс.
Formulaire de recherche sans code VBA Access
14:42
Просмотров 66 тыс.
Trucs et astuces pour les bases de données Access
24:17
Interactions VBA entre les objets Access
45:43
Просмотров 42 тыс.