Bonjour à tous,
j'ai a nouveau besoin de conseil pour mon application.(gestion de production)
Pour déclarer les quantités réellements consommées lors d'une
fabrication,j'ai créé un form (activé par la selection d'un produit), sur
lequel se crée autant de textbox qu'il y a de composant dans le produit(via
sa nomenclature). En face de chacune des textbox(matiere) il y a une textbox
vide dans laquelle l'opérateur saisi la consommation de ladite matiere.
Quand il click sur le bouton valider,je dois récuperer les valeurs saisies
pour chaque matieres afin de les défalquer du stock.
C'est cette opération qui me pose probleme, car mes textbox étant créées via
une variable msform.textbox dans un module, je ne sais pas comment les
appeller dans mon form pour récupérer leurs valeurs.
Code création des textbox:
T as msforms.textbox, Trep as msforms.textbox
Set T=formConsoMatiere.Controls.Add("forms.textbox.1","textbox"& j-1, TRUE)
With T
.Text=M
.Left=20
.
.
.
End with
j étant les lignes de composant de la nomenclature du produit, et M le nom
du composant.
Voila je ne sais pas si cela est clair....
Dans l'attente, je vous remerci de me consacrer un peu de temps et de savoir.
A+
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
michdenis
Bonjour Frédéric,
Qu'est-ce qui t'empêche de leur donner un nom de ton choix ? Comme tu les baptises toi-même, tu dois savoir comment les interpeller dans ton code lorsque tu dois faire référence à ces derniers.
Dim T As MSForms.TextBox Set T = UserForm1.Controls.Add("forms.textbox.1") J = 2 With T .Text = M .Left = 20 .Name = "R" & J - 1 End With
MsgBox T.Name Ou MsgBox Controls("r1").Name
Salutations!
"Frederic" a écrit dans le message de news:
Bonjour à tous, j'ai a nouveau besoin de conseil pour mon application.(gestion de production) Pour déclarer les quantités réellements consommées lors d'une fabrication,j'ai créé un form (activé par la selection d'un produit), sur lequel se crée autant de textbox qu'il y a de composant dans le produit(via sa nomenclature). En face de chacune des textbox(matiere) il y a une textbox vide dans laquelle l'opérateur saisi la consommation de ladite matiere. Quand il click sur le bouton valider,je dois récuperer les valeurs saisies pour chaque matieres afin de les défalquer du stock. C'est cette opération qui me pose probleme, car mes textbox étant créées via une variable msform.textbox dans un module, je ne sais pas comment les appeller dans mon form pour récupérer leurs valeurs. Code création des textbox: T as msforms.textbox, Trep as msforms.textbox Set T=formConsoMatiere.Controls.Add("forms.textbox.1","textbox"& j-1, TRUE) With T .Text=M .Left . . . End with j étant les lignes de composant de la nomenclature du produit, et M le nom du composant. Voila je ne sais pas si cela est clair.... Dans l'attente, je vous remerci de me consacrer un peu de temps et de savoir. A+
Bonjour Frédéric,
Qu'est-ce qui t'empêche de leur donner un nom de ton choix ?
Comme tu les baptises toi-même, tu dois savoir comment les interpeller
dans ton code lorsque tu dois faire référence à ces derniers.
Dim T As MSForms.TextBox
Set T = UserForm1.Controls.Add("forms.textbox.1")
J = 2
With T
.Text = M
.Left = 20
.Name = "R" & J - 1
End With
MsgBox T.Name
Ou
MsgBox Controls("r1").Name
Salutations!
"Frederic" <Frederic@discussions.microsoft.com> a écrit dans le message de news:
5888F96B-F6D0-4A16-8C44-E5A3E5916942@microsoft.com...
Bonjour à tous,
j'ai a nouveau besoin de conseil pour mon application.(gestion de production)
Pour déclarer les quantités réellements consommées lors d'une
fabrication,j'ai créé un form (activé par la selection d'un produit), sur
lequel se crée autant de textbox qu'il y a de composant dans le produit(via
sa nomenclature). En face de chacune des textbox(matiere) il y a une textbox
vide dans laquelle l'opérateur saisi la consommation de ladite matiere.
Quand il click sur le bouton valider,je dois récuperer les valeurs saisies
pour chaque matieres afin de les défalquer du stock.
C'est cette opération qui me pose probleme, car mes textbox étant créées via
une variable msform.textbox dans un module, je ne sais pas comment les
appeller dans mon form pour récupérer leurs valeurs.
Code création des textbox:
T as msforms.textbox, Trep as msforms.textbox
Set T=formConsoMatiere.Controls.Add("forms.textbox.1","textbox"& j-1, TRUE)
With T
.Text=M
.Left
.
.
.
End with
j étant les lignes de composant de la nomenclature du produit, et M le nom
du composant.
Voila je ne sais pas si cela est clair....
Dans l'attente, je vous remerci de me consacrer un peu de temps et de savoir.
A+
Qu'est-ce qui t'empêche de leur donner un nom de ton choix ? Comme tu les baptises toi-même, tu dois savoir comment les interpeller dans ton code lorsque tu dois faire référence à ces derniers.
Dim T As MSForms.TextBox Set T = UserForm1.Controls.Add("forms.textbox.1") J = 2 With T .Text = M .Left = 20 .Name = "R" & J - 1 End With
MsgBox T.Name Ou MsgBox Controls("r1").Name
Salutations!
"Frederic" a écrit dans le message de news:
Bonjour à tous, j'ai a nouveau besoin de conseil pour mon application.(gestion de production) Pour déclarer les quantités réellements consommées lors d'une fabrication,j'ai créé un form (activé par la selection d'un produit), sur lequel se crée autant de textbox qu'il y a de composant dans le produit(via sa nomenclature). En face de chacune des textbox(matiere) il y a une textbox vide dans laquelle l'opérateur saisi la consommation de ladite matiere. Quand il click sur le bouton valider,je dois récuperer les valeurs saisies pour chaque matieres afin de les défalquer du stock. C'est cette opération qui me pose probleme, car mes textbox étant créées via une variable msform.textbox dans un module, je ne sais pas comment les appeller dans mon form pour récupérer leurs valeurs. Code création des textbox: T as msforms.textbox, Trep as msforms.textbox Set T=formConsoMatiere.Controls.Add("forms.textbox.1","textbox"& j-1, TRUE) With T .Text=M .Left . . . End with j étant les lignes de composant de la nomenclature du produit, et M le nom du composant. Voila je ne sais pas si cela est clair.... Dans l'attente, je vous remerci de me consacrer un peu de temps et de savoir. A+
Frederic
Cela fait 3 semaines que j'ai débuté en VBA et certaines évidences ne me viennent pas toujours à l'esprit. Merci pour ce rappel élémentaire. Juste une précision: Comme les variable sont issues d'un module, pour les utiliser sur mon form je dois les déclarer public n'est ce pas? Merci et a+
Bonjour Frédéric,
Qu'est-ce qui t'empêche de leur donner un nom de ton choix ? Comme tu les baptises toi-même, tu dois savoir comment les interpeller dans ton code lorsque tu dois faire référence à ces derniers.
Dim T As MSForms.TextBox Set T = UserForm1.Controls.Add("forms.textbox.1") J = 2 With T .Text = M .Left = 20 .Name = "R" & J - 1 End With
MsgBox T.Name Ou MsgBox Controls("r1").Name
Salutations!
"Frederic" a écrit dans le message de news:
Bonjour à tous, j'ai a nouveau besoin de conseil pour mon application.(gestion de production) Pour déclarer les quantités réellements consommées lors d'une fabrication,j'ai créé un form (activé par la selection d'un produit), sur lequel se crée autant de textbox qu'il y a de composant dans le produit(via sa nomenclature). En face de chacune des textbox(matiere) il y a une textbox vide dans laquelle l'opérateur saisi la consommation de ladite matiere. Quand il click sur le bouton valider,je dois récuperer les valeurs saisies pour chaque matieres afin de les défalquer du stock. C'est cette opération qui me pose probleme, car mes textbox étant créées via une variable msform.textbox dans un module, je ne sais pas comment les appeller dans mon form pour récupérer leurs valeurs. Code création des textbox: T as msforms.textbox, Trep as msforms.textbox Set T=formConsoMatiere.Controls.Add("forms.textbox.1","textbox"& j-1, TRUE) With T .Text=M .Left .. .. .. End with j étant les lignes de composant de la nomenclature du produit, et M le nom du composant. Voila je ne sais pas si cela est clair.... Dans l'attente, je vous remerci de me consacrer un peu de temps et de savoir. A+
Cela fait 3 semaines que j'ai débuté en VBA et certaines évidences ne me
viennent pas toujours à l'esprit.
Merci pour ce rappel élémentaire.
Juste une précision: Comme les variable sont issues d'un module, pour les
utiliser sur mon form je dois les déclarer public n'est ce pas?
Merci et a+
Bonjour Frédéric,
Qu'est-ce qui t'empêche de leur donner un nom de ton choix ?
Comme tu les baptises toi-même, tu dois savoir comment les interpeller
dans ton code lorsque tu dois faire référence à ces derniers.
Dim T As MSForms.TextBox
Set T = UserForm1.Controls.Add("forms.textbox.1")
J = 2
With T
.Text = M
.Left = 20
.Name = "R" & J - 1
End With
MsgBox T.Name
Ou
MsgBox Controls("r1").Name
Salutations!
"Frederic" <Frederic@discussions.microsoft.com> a écrit dans le message de news:
5888F96B-F6D0-4A16-8C44-E5A3E5916942@microsoft.com...
Bonjour à tous,
j'ai a nouveau besoin de conseil pour mon application.(gestion de production)
Pour déclarer les quantités réellements consommées lors d'une
fabrication,j'ai créé un form (activé par la selection d'un produit), sur
lequel se crée autant de textbox qu'il y a de composant dans le produit(via
sa nomenclature). En face de chacune des textbox(matiere) il y a une textbox
vide dans laquelle l'opérateur saisi la consommation de ladite matiere.
Quand il click sur le bouton valider,je dois récuperer les valeurs saisies
pour chaque matieres afin de les défalquer du stock.
C'est cette opération qui me pose probleme, car mes textbox étant créées via
une variable msform.textbox dans un module, je ne sais pas comment les
appeller dans mon form pour récupérer leurs valeurs.
Code création des textbox:
T as msforms.textbox, Trep as msforms.textbox
Set T=formConsoMatiere.Controls.Add("forms.textbox.1","textbox"& j-1, TRUE)
With T
.Text=M
.Left
..
..
..
End with
j étant les lignes de composant de la nomenclature du produit, et M le nom
du composant.
Voila je ne sais pas si cela est clair....
Dans l'attente, je vous remerci de me consacrer un peu de temps et de savoir.
A+
Cela fait 3 semaines que j'ai débuté en VBA et certaines évidences ne me viennent pas toujours à l'esprit. Merci pour ce rappel élémentaire. Juste une précision: Comme les variable sont issues d'un module, pour les utiliser sur mon form je dois les déclarer public n'est ce pas? Merci et a+
Bonjour Frédéric,
Qu'est-ce qui t'empêche de leur donner un nom de ton choix ? Comme tu les baptises toi-même, tu dois savoir comment les interpeller dans ton code lorsque tu dois faire référence à ces derniers.
Dim T As MSForms.TextBox Set T = UserForm1.Controls.Add("forms.textbox.1") J = 2 With T .Text = M .Left = 20 .Name = "R" & J - 1 End With
MsgBox T.Name Ou MsgBox Controls("r1").Name
Salutations!
"Frederic" a écrit dans le message de news:
Bonjour à tous, j'ai a nouveau besoin de conseil pour mon application.(gestion de production) Pour déclarer les quantités réellements consommées lors d'une fabrication,j'ai créé un form (activé par la selection d'un produit), sur lequel se crée autant de textbox qu'il y a de composant dans le produit(via sa nomenclature). En face de chacune des textbox(matiere) il y a une textbox vide dans laquelle l'opérateur saisi la consommation de ladite matiere. Quand il click sur le bouton valider,je dois récuperer les valeurs saisies pour chaque matieres afin de les défalquer du stock. C'est cette opération qui me pose probleme, car mes textbox étant créées via une variable msform.textbox dans un module, je ne sais pas comment les appeller dans mon form pour récupérer leurs valeurs. Code création des textbox: T as msforms.textbox, Trep as msforms.textbox Set T=formConsoMatiere.Controls.Add("forms.textbox.1","textbox"& j-1, TRUE) With T .Text=M .Left .. .. .. End with j étant les lignes de composant de la nomenclature du produit, et M le nom du composant. Voila je ne sais pas si cela est clair.... Dans l'attente, je vous remerci de me consacrer un peu de temps et de savoir. A+
michdenis
Bonjour Frédéric,
Une variable Public peut être appelée par tous les modules.
Une variable déclarée au niveau d'un module est accessible par tous les procédures de ce module sans plus.
Attention, les variables déclarée au niveau d'un formulaire (userform1) ne conserve pas leur valeur lorsque ce dernier est déchargé de la mémoire vive avec la commande Unload Userform1. Il est possible de seulement masquer le formulaire avec Userform1.Hide et ainsi conserver la valeur des variables intactes. La commande Userform1.show affiche à nouveau le formulaire.
Si dans ton code, tu utilises la commande "End", toutes les variables qu'elles soient Public ou non sont réinitialées à 0 si la variable est de type numérique ou à "" si elle est de type texte.
Salutations!
"Frederic" a écrit dans le message de news:
Cela fait 3 semaines que j'ai débuté en VBA et certaines évidences ne me viennent pas toujours à l'esprit. Merci pour ce rappel élémentaire. Juste une précision: Comme les variable sont issues d'un module, pour les utiliser sur mon form je dois les déclarer public n'est ce pas? Merci et a+
Bonjour Frédéric,
Qu'est-ce qui t'empêche de leur donner un nom de ton choix ? Comme tu les baptises toi-même, tu dois savoir comment les interpeller dans ton code lorsque tu dois faire référence à ces derniers.
Dim T As MSForms.TextBox Set T = UserForm1.Controls.Add("forms.textbox.1") J = 2 With T .Text = M .Left = 20 .Name = "R" & J - 1 End With
MsgBox T.Name Ou MsgBox Controls("r1").Name
Salutations!
"Frederic" a écrit dans le message de news:
Bonjour à tous, j'ai a nouveau besoin de conseil pour mon application.(gestion de production) Pour déclarer les quantités réellements consommées lors d'une fabrication,j'ai créé un form (activé par la selection d'un produit), sur lequel se crée autant de textbox qu'il y a de composant dans le produit(via sa nomenclature). En face de chacune des textbox(matiere) il y a une textbox vide dans laquelle l'opérateur saisi la consommation de ladite matiere. Quand il click sur le bouton valider,je dois récuperer les valeurs saisies pour chaque matieres afin de les défalquer du stock. C'est cette opération qui me pose probleme, car mes textbox étant créées via une variable msform.textbox dans un module, je ne sais pas comment les appeller dans mon form pour récupérer leurs valeurs. Code création des textbox: T as msforms.textbox, Trep as msforms.textbox Set T=formConsoMatiere.Controls.Add("forms.textbox.1","textbox"& j-1, TRUE) With T .Text=M .Left .. .. .. End with j étant les lignes de composant de la nomenclature du produit, et M le nom du composant. Voila je ne sais pas si cela est clair.... Dans l'attente, je vous remerci de me consacrer un peu de temps et de savoir. A+
Bonjour Frédéric,
Une variable Public peut être appelée par tous les modules.
Une variable déclarée au niveau d'un module est accessible par tous les procédures
de ce module sans plus.
Attention, les variables déclarée au niveau d'un formulaire (userform1) ne conserve pas leur valeur lorsque
ce dernier est déchargé de la mémoire vive avec la commande Unload Userform1. Il est possible de
seulement masquer le formulaire avec Userform1.Hide et ainsi conserver la valeur des variables intactes.
La commande Userform1.show affiche à nouveau le formulaire.
Si dans ton code, tu utilises la commande "End", toutes les variables qu'elles soient Public ou non
sont réinitialées à 0 si la variable est de type numérique ou à "" si elle est de type texte.
Salutations!
"Frederic" <Frederic@discussions.microsoft.com> a écrit dans le message de news:
BDC41A79-1426-48B0-A427-7C83C52BAD36@microsoft.com...
Cela fait 3 semaines que j'ai débuté en VBA et certaines évidences ne me
viennent pas toujours à l'esprit.
Merci pour ce rappel élémentaire.
Juste une précision: Comme les variable sont issues d'un module, pour les
utiliser sur mon form je dois les déclarer public n'est ce pas?
Merci et a+
Bonjour Frédéric,
Qu'est-ce qui t'empêche de leur donner un nom de ton choix ?
Comme tu les baptises toi-même, tu dois savoir comment les interpeller
dans ton code lorsque tu dois faire référence à ces derniers.
Dim T As MSForms.TextBox
Set T = UserForm1.Controls.Add("forms.textbox.1")
J = 2
With T
.Text = M
.Left = 20
.Name = "R" & J - 1
End With
MsgBox T.Name
Ou
MsgBox Controls("r1").Name
Salutations!
"Frederic" <Frederic@discussions.microsoft.com> a écrit dans le message de news:
5888F96B-F6D0-4A16-8C44-E5A3E5916942@microsoft.com...
Bonjour à tous,
j'ai a nouveau besoin de conseil pour mon application.(gestion de production)
Pour déclarer les quantités réellements consommées lors d'une
fabrication,j'ai créé un form (activé par la selection d'un produit), sur
lequel se crée autant de textbox qu'il y a de composant dans le produit(via
sa nomenclature). En face de chacune des textbox(matiere) il y a une textbox
vide dans laquelle l'opérateur saisi la consommation de ladite matiere.
Quand il click sur le bouton valider,je dois récuperer les valeurs saisies
pour chaque matieres afin de les défalquer du stock.
C'est cette opération qui me pose probleme, car mes textbox étant créées via
une variable msform.textbox dans un module, je ne sais pas comment les
appeller dans mon form pour récupérer leurs valeurs.
Code création des textbox:
T as msforms.textbox, Trep as msforms.textbox
Set T=formConsoMatiere.Controls.Add("forms.textbox.1","textbox"& j-1, TRUE)
With T
.Text=M
.Left
..
..
..
End with
j étant les lignes de composant de la nomenclature du produit, et M le nom
du composant.
Voila je ne sais pas si cela est clair....
Dans l'attente, je vous remerci de me consacrer un peu de temps et de savoir.
A+
Une variable Public peut être appelée par tous les modules.
Une variable déclarée au niveau d'un module est accessible par tous les procédures de ce module sans plus.
Attention, les variables déclarée au niveau d'un formulaire (userform1) ne conserve pas leur valeur lorsque ce dernier est déchargé de la mémoire vive avec la commande Unload Userform1. Il est possible de seulement masquer le formulaire avec Userform1.Hide et ainsi conserver la valeur des variables intactes. La commande Userform1.show affiche à nouveau le formulaire.
Si dans ton code, tu utilises la commande "End", toutes les variables qu'elles soient Public ou non sont réinitialées à 0 si la variable est de type numérique ou à "" si elle est de type texte.
Salutations!
"Frederic" a écrit dans le message de news:
Cela fait 3 semaines que j'ai débuté en VBA et certaines évidences ne me viennent pas toujours à l'esprit. Merci pour ce rappel élémentaire. Juste une précision: Comme les variable sont issues d'un module, pour les utiliser sur mon form je dois les déclarer public n'est ce pas? Merci et a+
Bonjour Frédéric,
Qu'est-ce qui t'empêche de leur donner un nom de ton choix ? Comme tu les baptises toi-même, tu dois savoir comment les interpeller dans ton code lorsque tu dois faire référence à ces derniers.
Dim T As MSForms.TextBox Set T = UserForm1.Controls.Add("forms.textbox.1") J = 2 With T .Text = M .Left = 20 .Name = "R" & J - 1 End With
MsgBox T.Name Ou MsgBox Controls("r1").Name
Salutations!
"Frederic" a écrit dans le message de news:
Bonjour à tous, j'ai a nouveau besoin de conseil pour mon application.(gestion de production) Pour déclarer les quantités réellements consommées lors d'une fabrication,j'ai créé un form (activé par la selection d'un produit), sur lequel se crée autant de textbox qu'il y a de composant dans le produit(via sa nomenclature). En face de chacune des textbox(matiere) il y a une textbox vide dans laquelle l'opérateur saisi la consommation de ladite matiere. Quand il click sur le bouton valider,je dois récuperer les valeurs saisies pour chaque matieres afin de les défalquer du stock. C'est cette opération qui me pose probleme, car mes textbox étant créées via une variable msform.textbox dans un module, je ne sais pas comment les appeller dans mon form pour récupérer leurs valeurs. Code création des textbox: T as msforms.textbox, Trep as msforms.textbox Set T=formConsoMatiere.Controls.Add("forms.textbox.1","textbox"& j-1, TRUE) With T .Text=M .Left .. .. .. End with j étant les lignes de composant de la nomenclature du produit, et M le nom du composant. Voila je ne sais pas si cela est clair.... Dans l'attente, je vous remerci de me consacrer un peu de temps et de savoir. A+