VBA, avec CreateObject("Scripting.Dictionary")

2 réponses
Avatar
Emile63
Bonjour =C3=A0 tous,

Avec l'exemple en lien ci-dessous je souhaiterais qu'=C3=A0 chaque nouveau =
formulaire rempli, ins=C3=A9rer (par l'interm=C3=A9diaire d'un bouton) dan=
s une base de donn=C3=A9es [3] les champs que je r=C3=A9colte dans le formu=
laire [1] avec une proc=C3=A9dure VBA, "CreateObject("Scripting.Dictionary"=
)" .
Comme je ne vois pas comment le faire directement, je passe par une table i=
nterm=C3=A9diaire [2], mais malheureusement je n'y arrive pas :(
Si quelqu'un pouvait me venir en aide, je vous remercie d'avance.
Bonne soir=C3=A9e.

https://www.cjoint.com/c/IDzreM7HsSN

Emile

2 réponses

Avatar
MichD
Le 25/04/19 à 13:10, Emile63 a écrit :
Bonjour à tous,
Avec l'exemple en lien ci-dessous je souhaiterais qu'à chaque nouveau formulaire rempli, insérer (par l'intermédiaire d'un bouton) dans une base de données [3] les champs que je récolte dans le formulaire [1] avec une procédure VBA, "CreateObject("Scripting.Dictionary")" .
Comme je ne vois pas comment le faire directement, je passe par une table intermédiaire [2], mais malheureusement je n'y arrive pas :(
Si quelqu'un pouvait me venir en aide, je vous remercie d'avance.
Bonne soirée.
https://www.cjoint.com/c/IDzreM7HsSN
Emile

Bonjour,
Pour écrire cette ligne de code, tu dois obligatoirement cocher la
référence suivante : " Microsoft Scripting Runtime". Pour ce faire,
dans la fenêtre de l'éditeur de code, barre des menus, outils /
références / et tu coches la référence mentionnée dans la liste.
Dans un objet "Dictionary", la "Key" ne doit pas avoir de doublon" alors
attention à cette ligne de code : Then MonProjet.Add C.Value, C.Value
Le premier C.Value représente la "Key"
Quand tu déclares une variable objet comme ceci, l'objet est
automatiquement créé à cause du mot "New" dans la ligne de déclaration.
Dim MonProjet As New Dictionary
Tu n'a pas besoin d'ajouter cette ligne de code :
Set MonProjet = CreateObject("Scripting.Dictionary")
MichD
Avatar
Emile63
Le jeudi 25 avril 2019 22:19:40 UTC+2, MichD a écrit :
Le 25/04/19 à 13:10, Emile63 a écrit :
Bonjour à tous,
Avec l'exemple en lien ci-dessous je souhaiterais qu'à chaque nouv eau formulaire rempli, insérer (par l'intermédiaire d'un bouton) dans une base de données [3] les champs que je récolte dans le f ormulaire [1] avec une procédure VBA, "CreateObject("Scripting.Diction ary")" .
Comme je ne vois pas comment le faire directement, je passe par une tab le intermédiaire [2], mais malheureusement je n'y arrive pas :(
Si quelqu'un pouvait me venir en aide, je vous remercie d'avance.
Bonne soirée.
https://www.cjoint.com/c/IDzreM7HsSN
Emile

Bonjour,
Pour écrire cette ligne de code, tu dois obligatoirement cocher la
référence suivante : " Microsoft Scripting Runtime". Pour ce f aire,
dans la fenêtre de l'éditeur de code, barre des menus, outils /
références / et tu coches la référence mentionné e dans la liste.
Dans un objet "Dictionary", la "Key" ne doit pas avoir de doublon" alors
attention à cette ligne de code : Then MonProjet.Add C.Value, C.Valu e
Le premier C.Value représente la "Key"
Quand tu déclares une variable objet comme ceci, l'objet est
automatiquement créé à cause du mot "New" dans la ligne de déclaration.
Dim MonProjet As New Dictionary
Tu n'a pas besoin d'ajouter cette ligne de code :
Set MonProjet = CreateObject("Scripting.Dictionary")
MichD

Merci MichD