Msgbox sous Visual Basic

Fermé
Utilisateur anonyme - 1 nov. 2005 à 14:19
cnnk Messages postés 5 Date d'inscription samedi 20 juin 2009 Statut Membre Dernière intervention 25 novembre 2010 - 23 juil. 2009 à 12:13
Bonjour
Est-il possible de créer une MsgBox avec une zone de texte intégrée sous VB?
Et si oui, comment récupérer le contenu de cette zone de texte pour l'afficher dans une autre zone de texte dans un formulaire?
Merci
A voir également:

11 réponses

salut,

essaie avec inputbox.
vas voir la syntaxe ici:
http://www.info-3000.com/vbvba/inputbox.php
1
rodrigue62 Messages postés 190 Date d'inscription vendredi 18 février 2005 Statut Membre Dernière intervention 10 janvier 2011 30
28 avril 2006 à 14:04
alors personne n'a d'idée pour remplacer une boite de dialogue indiquant uen erreur par une plus explicite cree par la fonction msgbox en VBA?
1
rodrigue62 Messages postés 190 Date d'inscription vendredi 18 février 2005 Statut Membre Dernière intervention 10 janvier 2011 30
27 avril 2006 à 09:12
et peut on supprimer les boites de dialogue par defaut sous access. Je m'explique lors d'une certaine erreur de saisie, une boite de dialogue s'affiche mais elle ne donne pas beaucoup de détail sur l'erreur, j'en ai donc crées une en VBA plus explicite, elle se lance bien quand il faut mais le problême est qu'apres l'avoir validée j'ai encore celle qui etait par defaut sous access qui s'affiche. Sa commence a faire beaucoup de boite de dialogue pour une seule erreur.
Merci pour votre aide!
0
Pascal_22 Messages postés 534 Date d'inscription lundi 20 mars 2006 Statut Membre Dernière intervention 29 août 2014 54
28 avril 2006 à 14:20
Salut !!

La facon c de faire une gestion d'error.
exemple ......
Private Sub cmdFirst_Click()
On Error GoTo Err_cmdFirst_Click
'TON CODE ICI


Err_cmdFirst_Click:
'SI UNE ERREUR SE PRODUIT, CA VIENT ICI.
MsgBox Err.description

'TU PEUT FAIRE AUSSI UNE GESTION SELON l'ERREUR RECU Avec la variable error --->
if err.number ='un no d'erruer' then
'ton code quand il y a cette erreur
end if


End Sub

J'espere avoir pu t'aider !!
Pascal_22
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
rodrigue62 Messages postés 190 Date d'inscription vendredi 18 février 2005 Statut Membre Dernière intervention 10 janvier 2011 30
28 avril 2006 à 14:28
salut Pascal_22,
Donc si je comprend bien tu declare une fonction Error GoTo Err_cmdFirst_Click qui renvoie a une fonction affichant une msgbox lorsuqe la condition est validée? Le code sera donc une boucle If verifiant si il y a une erreur ou non?
mais est ce qu'en faisant ca la boite de dialogue qui etait affiché par access lors de l'erreur va disparaitre et etre remplacée par la mienne?
Merci pour ton aide !
0
Pascal_22 Messages postés 534 Date d'inscription lundi 20 mars 2006 Statut Membre Dernière intervention 29 août 2014 54
28 avril 2006 à 16:46
Salut Rodrigue62 !

Ben oui et non, je t'explique. C'est pas vraiment une fonction. Tu place au début de ta sub ou fonction "on error goto NomDeLaGestionD'Erreur(le nom peut etre n'importe quoi)

apres tu mets ton code. Si une erreur se produit dans ton code dans cette sub ou fonction, ca crée une erreur, donc vu que tu as mis au debut de ta fonction "on error goto NomQuetuVeux" ca va recherche dans cette sub le nom que tu as mis, puis ca va exécuter le code que tu y as mis sous ce nom là, en général c'Est utiliser lors de la gestion d'error, c'Est a dire, que les message par default ne son pas tres explicite, donc on peut se les créé nous-meme, pour que les message d'erreur soient plus claire.

Si c'est ca que tu veux faire, tu dois créé l'erreur que tu veux changer, tu prends en note le no d'erreur (quand un message apparait tu a en général run-tuime error 2222(un numero). Donc tu retiens se numéros et dans ta gestion d'erreur tu marque :
if err.number=2222 then
'ton code pour géré cette erreur la
elseif err.number=8234 then
'ton code pour géré cette erreur la
elseif err.number=1232 then
'ton code pour géré cette erreur la
end if

Pour savoir quel erreur correspond a quelle numéro, il faut que tu déclanche cette erreur en mettant des erreur dans ton code, tout deépendament ce que tu veux faire, puis la tu prends le numéro de l'erreur puis tu la gere comme tu veux.

regarde l'example.

private sub OuvrirRapport()

on error goto VerificationErreur
Dim DocName As String
DocName = "RapportA"
DoCmd.OpenReport DocName, A_PREVIEW

VerificationErreur:'si une erreur se produit dans le code, ca vient ici
if err.number=2345 then
msgbox "Impossible de trouver le rapport"
elseif err.number=4567 then
msgbox "impossible d'ouvrir le rapport"
end if

Tu peux faire n'importe quoi, là j'ai mis des messageboxes mais tu peux faire n'importe quoi.

Pour répondre a ta question, quand tu fais de la gestion d'erreur, ca remplace le message par défaut.

Jespere avoir pu t'aider, n'hésite pas a me le dire si j'ai pas été assez clair ou si ta d'autre question !!!.
a+

Pascal_22

end sub
0
rodrigue62 Messages postés 190 Date d'inscription vendredi 18 février 2005 Statut Membre Dernière intervention 10 janvier 2011 30
2 mai 2006 à 11:33
Salut Pascal_22,
Ben en fait la c'est pas vraiment une erreur mais un fichier d'information, donc j'ai pas de numero d'erreur. En fait c'est parceque j'ai une liste deroulante et j'ai coché la propriété:"se limiter a la liste". Donc quand on saisi a la main et que le nom saisi n'appartient pas a la liste ca met un message d'info comme quoi le texte entré n'appartient pas a la liste, et c'est ce message que je veux remplacer.
merci pour ton aide.
0
Pascal_22 Messages postés 534 Date d'inscription lundi 20 mars 2006 Statut Membre Dernière intervention 29 août 2014 54
2 mai 2006 à 15:03
Salut Rodrigue62,

C pas très clair, je ne comprend pas tres bien, ce que je comprends c'est que tu as une liste déroulante. Et que tu écris dans cette même liste déroulante pour rechercher un nom identique a ce que tu as entrez, par la suite tu appui sur ENTER pour faire la recherche. !

EsT-ce cela ??

Pascal_22
0
rodrigue62 Messages postés 190 Date d'inscription vendredi 18 février 2005 Statut Membre Dernière intervention 10 janvier 2011 30
2 mai 2006 à 15:32
oui en fait on peux soit choisir directement dans la liste, soit saisir au clavier, mais si on saisie au clavier, apres que l'on change de champ, si la saisie ne correspond a aucun element de la liste, on a un message d'information indiquant que l'on en peux pas entrer ce nom car il n'appartient pas a la liste. En gros c'est un moyen de forcer le champ pour qu'il ne puisse prendre que certaines valeurs definies dans une autre table en fonction d'une requete.
0
Pascal_22 Messages postés 534 Date d'inscription lundi 20 mars 2006 Statut Membre Dernière intervention 29 août 2014 54
2 mai 2006 à 17:20
Salut Rodrigue62,

Ok j'ai compris, tu vas voir c'est assez facile. tu programme en
vb 6 ou vba ??? pour que je puisse t'envoyer la solution dans le bon language.

Pascal_22
0
rodrigue62 Messages postés 190 Date d'inscription vendredi 18 février 2005 Statut Membre Dernière intervention 10 janvier 2011 30
3 mai 2006 à 11:27
Je programme en VBA directement sous Access.Ainsi j'avais mis le programme sous une procedure evenementielle repondant a l'erreur.
0
Pascal_22 Messages postés 534 Date d'inscription lundi 20 mars 2006 Statut Membre Dernière intervention 29 août 2014 54
3 mai 2006 à 14:17
Salut Rodrigue62,

Ce que tu as a faire, Tu va coder dans "One lost focus" (evenement) de la combobox (liste déroulante). "One lost focus" veux dire quand tu change de controle(quand tu soirt de la liste déroulante). Tu vas faire une boucle dans la combo box pour vérifier si ce que l'usager a écris correspond a un item de la liste de la combobox.

Si l'item correspond a un item de la liste déroulante, tu exécute ton code, et SINON tu envoi un message a l'usager disant que l'item entrer ne corespond pas !!

Si tas besoin d'autre info, n'hésite pas !!!!

Pascal_22
0
cnnk Messages postés 5 Date d'inscription samedi 20 juin 2009 Statut Membre Dernière intervention 25 novembre 2010
23 juil. 2009 à 12:13
Salu les amis ; Je sui débutan et j'aimerai trouver un exemple d'application accompagné de son code source , traitant sur les MsgBox en visual basic 6.0
A l'aide
0