modification d'une macro
2 participants
Page 1 sur 1
modification d'une macro
bonjour
j'ai cette fonction qui affiche des messages system et des messages classique (texte)
pour les messages classiques
je voudrais juste remplacer PushMSG() pour les messages classiques par une boite de dialogue du type
MsgBox(Message [, Bouton(s) + Icône + Bouton_sélectionné_par_défaut] [, TitreFenêtre] )
exemple
MsgBox("Erreur!" & Chr(10) & Chr(10) & "Sonde déclenchée pendant le mouvement Z" , 0+48+0, ATTENTION )
est ce possible ??
++ gilles
j'ai cette fonction qui affiche des messages system et des messages classique (texte)
- Code:
Function PushMSG(Str1 As String) As Boolean
SetUserLabel (21,GetUserLabel(20))
SetUserLabel (20,GetUserLabel(19))
SetUserLabel (19,GetUserLabel(18))
SetUserLabel (18,GetUserLabel(17))
SetUserLabel (17,Str1)
Message Str1
PushMSG=True
End Function
pour les messages classiques
- Code:
PushMSG("Erreur! Sonde déclenchée pendant le mouvement Z")
je voudrais juste remplacer PushMSG() pour les messages classiques par une boite de dialogue du type
MsgBox(Message [, Bouton(s) + Icône + Bouton_sélectionné_par_défaut] [, TitreFenêtre] )
exemple
MsgBox("Erreur!" & Chr(10) & Chr(10) & "Sonde déclenchée pendant le mouvement Z" , 0+48+0, ATTENTION )
est ce possible ??
++ gilles
gilles974- acharné du forum
- Messages : 474
Points : 709
Date d'inscription : 31/10/2011
Age : 66
Localisation : La Réunion
Re: modification d'une macro
j'ai réussi à moitier
j'arrive pas à intégrer es boutons et le titre de la boite
j'arrive pas à intégrer es boutons et le titre de la boite
- Code:
Dim Bouton
Dim Titre
Bouton = vbOKOnly + vbExclamation + vbDefaultButton1
Titre = "ATTENTION....."
MsgBox("Une érreur c'est produite...." & Chr(10) & Chr(10) & "recherche G31 X terminée sans prise de contact" & Chr(10) & "Revenez manuellement à la position de départ et répétez la recherche" )
gilles974- acharné du forum
- Messages : 474
Points : 709
Date d'inscription : 31/10/2011
Age : 66
Localisation : La Réunion
Re: modification d'une macro
Salut,
a) Si tu utilise le mode avec options de MsgBox(), il faut l'utiliser comme une fonction avec valeur de retour.
b) Les constante de type "'vbOKOnly" ne font pas partie du Basic Cypress mais du Visual Basic, donc il faut utiliser des valeurs numériques ou définir chaque contante.(*)
(bon, je n'ai pas corrigé les fautes d'orthographe )
(*) ex: pour définir une constante appelée "vbExclamation" avec une valeur de 48
++
David
a) Si tu utilise le mode avec options de MsgBox(), il faut l'utiliser comme une fonction avec valeur de retour.
b) Les constante de type "'vbOKOnly" ne font pas partie du Basic Cypress mais du Visual Basic, donc il faut utiliser des valeurs numériques ou définir chaque contante.(*)
- Code:
Dim Bouton
Dim Titre
Bouton = 0 + 48 + 0 'vbOKOnly + vbExclamation + vbDefaultButton1
Titre = "ATTENTION....."
reply = MsgBox("Une érreur c'est produite...." & Chr(10) & Chr(10) & "recherche G31 X terminée sans prise de contact" & Chr(10) & "Revenez manuellement à la position de départ et répétez la recherche", bouton,titre )
(bon, je n'ai pas corrigé les fautes d'orthographe )
(*) ex: pour définir une constante appelée "vbExclamation" avec une valeur de 48
- Code:
Const vbExclamation = 48
++
David
_________________
Traduction Française de CamBam et de sa documentation.
Re: modification d'une macro
merci david pour le coup de pouce
ca marche mieux , mais j'ai 2 fenêtres qui s'ouvrent
la 1er est conforme au message
la 2eme fenêtre en dessous affiche un "1"
ca marche mieux , mais j'ai 2 fenêtres qui s'ouvrent
la 1er est conforme au message
- Code:
Bouton = 0 + 48 + 0 'vbOKOnly + vbExclamation + vbDefaultButton1
Titre = "ATTENTION....."
reply = MsgBox("Une erreur s'est produite...." & Chr(10) & Chr(10) & "recherche G31 X terminées sans prise de contact" & Chr(10) & "Revenez manuellement à la position de départ et recommencer la recherche",Bouton, Titre )
Msgbox reply
la 2eme fenêtre en dessous affiche un "1"
gilles974- acharné du forum
- Messages : 474
Points : 709
Date d'inscription : 31/10/2011
Age : 66
Localisation : La Réunion
Re: modification d'une macro
la 2eme fenêtre en dessous affiche un "1"
Oui, c'est normal, c'est ton instruction Msgbox reply qui t'affiche le 1 (tu demande l'affichage de la valeur contenue dans la variable "reply")
la variable "reply" contient la valeur renvoyée par la fonction reply = MsgBox(), donc le n° du bouton que tu as cliqué .. (et vu qu'il n'y a qu'un seul bouton, le résultat sera toujours égal à 1)
Si par exemple tu remplace la valeur de "bouton" par 1 + 48 + 0, le 1 signifie que tu veux un bouton OK et un bouton Annuler
Bouton = 1 + 48 + 0 'vbOKCancel + vbExclamation + vbDefaultButton1
Titre = "ATTENTION....."
reply = MsgBox("Une erreur s'est produite...." & Chr(10) & Chr(10) & "recherche G31 X terminées sans prise de contact" & Chr(10) & "Revenez manuellement à la position de départ et recommencer la recherche",Bouton, Titre )
MsgBox reply
Dans ce cas, si tu clique sur OK, reply vaudra 1, si tu clique sur Annuler ou si tu ferme la fenêtre via la croix, reply vaudra 2
Dans la suite de ton programme, tu peux donc tester "reply" avec un If/Then pour savoir quel bouton à été cliqué et pour agir en conséquence.
++
David
_________________
Traduction Française de CamBam et de sa documentation.
Sujets similaires
» INSTALLATION ET PARAMETRAGE CNC XHC MK4-ET-T8S
» Decoupe dune plaque en fonte
» sortir d'une macro
» lancer macro
» macro lubrification
» Decoupe dune plaque en fonte
» sortir d'une macro
» lancer macro
» macro lubrification
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum