Code vba pour access [Résolu]

developvbdebut 476 Messages postés samedi 14 août 2004Date d'inscription 2 juin 2012 Dernière intervention - 8 sept. 2005 à 21:33 - Dernière réponse : developvbdebut 476 Messages postés samedi 14 août 2004Date d'inscription 2 juin 2012 Dernière intervention
- 10 sept. 2005 à 20:04
Bonsoir tout le monde

Je voudrai copié des élément d'une zone de text à une autre situé dans un autre formulair

j'ai 2 formulaire

-formajout
-entre_eva_autonomie

Deux zone de texte

texte10->formajout
texte2->entrer_eva_autonomie

J'ai fais un code, mai il ne fonctionne pas:

Au test

Il me répond:

erreur d'execution '424'

Il dit Objet requis.

Quand je click sur débogage, il selectionne 'entrer_eva_autonomie.Texte2.Text = Texte10.Text'

Voici le code:

Private Sub Texte10_BeforeUpdate(Cancel As Integer)

entrer_eva_autonomie.Texte2.Text = Texte10.Text

End Sub

Pouvez vous m'aidez svp?

Merci

Cordialement

A bientôt
Afficher la suite 

19 réponses

Meilleure réponse
smicky77 2 Messages postés vendredi 9 septembre 2005Date d'inscription 10 septembre 2005 Dernière intervention - 10 sept. 2005 à 17:34
3
Merci
1 - Ton premier formulaire "formajout" doit toujours être ouvert
2 - Le nom de ton deuxième formulaire ne doit pas commencer par Form (mot réservé)
3 - Ensuite tu mets le code ci-dessous dans la propriété évènements du deuxième formulaire (Sur activation du formulaire "entrer_eva_autonomie")


Private Sub Form_Current()
Me.Texte2 = Forms!formajout!texteNOM.Value
End Sub

J'ai testé ça marche

Alain

Merci smicky77 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 93 internautes ce mois-ci

PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 8 sept. 2005 à 22:03
0
Merci
salut,
vérifie le nom de tes contrôles.
es-tu certains qu'ils sont avec un "e" ?
Text20 Text2 Texte20 Texte2 ...
PCPT
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 8 sept. 2005 à 22:05
0
Merci
ou peut-être aussi :
entrer_eva_autonomie.Texte2.Text = formajout.Texte10.Text
PCPT
developvbdebut 476 Messages postés samedi 14 août 2004Date d'inscription 2 juin 2012 Dernière intervention - 9 sept. 2005 à 06:03
0
Merci
Bonjour tout le monde

Il y a bien un "e" à la fin de texte.

Je n'ai pas mis formajout car le code est dans formajout.

y a t'il un solution?

Cordialement

A bientôt
Doro81079 398 Messages postés vendredi 22 avril 2005Date d'inscription 24 février 2015 Dernière intervention - 9 sept. 2005 à 06:14
0
Merci
bonjour,

j'ai eu le meme probleme ce code ne marche pas en vba alors que oui en vb6
j'ai pas trouver la solution mais j'ai pas vraiment chercher essais de voir dans l'aide d'access a tout hasard

salut
doro
developvbdebut 476 Messages postés samedi 14 août 2004Date d'inscription 2 juin 2012 Dernière intervention - 9 sept. 2005 à 06:19
0
Merci
Rebonjour tout le monde

Je vais essayer de voir si il ya un moyen avec les tables.

Merci

Cordialement

A bientôt
smicky77 2 Messages postés vendredi 9 septembre 2005Date d'inscription 10 septembre 2005 Dernière intervention - 9 sept. 2005 à 09:19
0
Merci
Salut,

N'oublie pas que pour récupérer une donnée de formulaire, il faut que celui-ci (formajout) soit ouvert.

Alain
developvbdebut 476 Messages postés samedi 14 août 2004Date d'inscription 2 juin 2012 Dernière intervention - 9 sept. 2005 à 21:17
0
Merci
Bonsoir tout le monde

En modifiant le code ainsi, vba n'a fai aucune erreur.

Private Sub texteNOM_change()


Form_entrer_eva_autonomie.Texte2.Text = Texte10.Text

End Sub

Mais, élace rien ne n'affiche, je souhaiterai que sa s'affiche l'or de l'ouverture du formulaire Form_entrer_eva_autonomie.

Merci

Cordialement

A bientôt
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 9 sept. 2005 à 21:44
0
Merci
salut,

les évènements retournées par les objets, il ne faut pas les inventer....

texteNOM_Change() ne se produit qu'au changement du .Text de texteNOM

forcément, tu n'as pas d'erreur, surtout si textNOM n'existe pas. puisqu'aucun évènement n'est retourné....

"je souhaiterai que sa s'affiche"
c'est quoi, un formulaire? lequel ?

si tu veux qu'un TxtBox reçoive la valeur d'un autre, tu auras une erreur '424' si un des 2 (au moins) n'existe pas.
mais pour l'affichage, faut expliquer....

PCPT
developvbdebut 476 Messages postés samedi 14 août 2004Date d'inscription 2 juin 2012 Dernière intervention - 9 sept. 2005 à 22:50
0
Merci
Rebonsoir tout le monde

Je réexplique, je veux tapper un Nom dans la zone de text 'textNOM' qui se trouve sur le formulaire formajout et je souhaiterai que le Nom apparaisse dans la zone de text du formulaire Form_entrer_eva_autonomie.

Voici le code tel qui les:

Private Sub texteNOM_change()


Form_entrer_eva_autonomie.Texte2.Text = texteNOM.Text

End Sub

Que dois je modifier?

Merci

Cordialement

A bientôt
Doro81079 398 Messages postés vendredi 22 avril 2005Date d'inscription 24 février 2015 Dernière intervention - 9 sept. 2005 à 23:14
0
Merci
bonsoir,


j'ai compris ce que tu veux faire mais le problème vient de la syntaxe


form_ajout.machin c'est pour vb6 et ça ne marche pas en vba....


j'ai peut etre ,je dit bien peut etre car je n'ai pas essayer, trouver la syntaxe donc tu essayes et tu me dis....

essayes (plusieurs solution):

dans le change comme tu as fait mais de cette façon:
Form_entrer_eva_autonomie!Texte2.Text = texte10.Text

ou alors dans le load (ou initialize)de la form eva_autonomie :
texte2.text=formajout!texte10.text

je ne te garantis rien mais j'ai trouver une ligne de code similaire
pour faire appel à un objet avec le nom du formulaire qui le contient

merci de me tenir au courant.....

salut
doro
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 9 sept. 2005 à 23:50
0
Merci
tu parles de "çà s'affiche"
tu n'aurais pas un peux oublier d'ouvrir la 2e Form avant?

et ton "texteNOM" a changé pour "textNOM" ?

voici la syntaxe en VB6. à adapter peut-être selon les conseils de Doro81079


'-----------------
' FORM1
'-----------------
'cette Form est la première à s'ouvrir.
'la propriété Name est "formajout"
'elle contient un TxtBox nommé "textNOM"

Private Sub Form_Load()
'on ouvre la 2e Form
Form_entrer_eva_autonomie.Show
End Sub
'
'
Private Sub textNOM_Change()
'lorque qu'une touche est saisie, le champs texte de la seconde
'Form en est affectée
Form_entrer_eva_autonomie.Texte2.Text = textNOM.Text
End Sub

'-----------------
' FORM2
'-----------------
'cette Form est la deuxième à s'ouvrir.
'sa propriété Name est "Form_entrer_eva_autonomie"
'son ouverture est commandée par le chargement [Form_Load] de la "formajout"
'elle contient un TxtBox nommé "Texte2"

Private Sub Form_Load()
'aucun code particulier....
End Sub



<SMALL> Coloration syntaxique automatique [AFCK]</SMALL>


PCPT
Doro81079 398 Messages postés vendredi 22 avril 2005Date d'inscription 24 février 2015 Dernière intervention - 9 sept. 2005 à 23:50
0
Merci
re,

alors j'ai tester et ça marche pas la syntaxe que je t'ai donner donc j'ai regarder de plus prés et j'ai trouver alors j'ai creer 2 form
avec chacune une textbox

-formulaire 1 et texte0
-formulaire 2 et texte0

dans l'évenement click du form1
appel de form2

dans le load du form2
Texte0 = Forms!Formulaire1!Texte0.Text

attention pour les .text il faut le mettre pour le formulaire exterieur
car il est actif mais il ne faut pas le mettre pour le controñe dont le form est en train de charger car il n'est pas actif en vba si un controñe n'est pas encore charger on ne peut pas mettre .text

il ne te reste plus qu'a mettre dans les procédures suivant comment tu charge la feuille...

si tu n'as pas tout compris fais moi signe

salut
doro
Doro81079 398 Messages postés vendredi 22 avril 2005Date d'inscription 24 février 2015 Dernière intervention - 9 sept. 2005 à 23:54
0
Merci
re,

tu as raison pcpt pour le chargement de la form mais comme tu voit la syntaxe en vba est différente de celle en vb6....

salut
doro
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 10 sept. 2005 à 00:02
0
Merci
oui, ce n'est que pour donner une idée (s'il peut y avoir silimitude...)
je peux par faire plus, aucune connaissance en VBA (et sans regret)
PCPT
Doro81079 398 Messages postés vendredi 22 avril 2005Date d'inscription 24 février 2015 Dernière intervention - 10 sept. 2005 à 00:08
0
Merci
re,

'aucune connaissance en VBA (et sans regret)'tu as encore raison et pour le reste c'est toujours bon à savoir.....

salut
doro
developvbdebut 476 Messages postés samedi 14 août 2004Date d'inscription 2 juin 2012 Dernière intervention - 10 sept. 2005 à 07:58
0
Merci
Bonjour tout le monde

Donc, je dois inverser le code, dois je le laisser dans formajout ou le mettre dans Form_entrer_eva_autonomie.

Voici le code, il est toujour dans formajout:

Private Sub Form_Load()


Form_entrer_eva_autonomie.Texte2.Text = texteNOM.Text


End Sub

Que dois je faire exactement?

Excusé moi da ma lenteur à comprendre.

Merci


Cordialement

A bientôt
Doro81079 398 Messages postés vendredi 22 avril 2005Date d'inscription 24 février 2015 Dernière intervention - 10 sept. 2005 à 15:57
0
Merci
bonjour,

déja tu oublis la syntaxe
Form_entrer_eva_autonomie.Texte2.Text = texteNOM.Text

c'est pour VB6 et pas VBA

la syntaxe je te l'ai donner plus haut

ensuite si tu veux que l'on te dise dans quelle procédure et dans quel sens mettre la syntaxe
il faut que tu nous dise comment tu charge la form eva avec un bouton ??? ou autre si elle est charger en meme temps que l'autre etc...
qu'est ce qui se passe dans ton appli???

salut
doro
developvbdebut 476 Messages postés samedi 14 août 2004Date d'inscription 2 juin 2012 Dernière intervention - 10 sept. 2005 à 20:04
0
Merci
Bonsoir tout le monde

Ca fonctionne smicky77

Merci

Cordialement

A bientôt

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.