OVH Cloud OVH Cloud

Petit souci de condition ( If )

7 réponses
Avatar
Ayrton [ASC]
Bonsoir à tous,

Dans le but d"éviter à certains utilisateurs d'oublier defaire des
enregistrements, je cherche un petit bout de code mepermettant de faire
cela; je m'explique :
Dans un classeur oèu des utilisateurs saisissent certaines informations,
j'ai fait deux boutons ; le premier avec une syntaxe que l'on m'a donné
sur ce forum et qui permet de sauvegarder en .txt le classeur et le
second où j'ai rajouté un peu de code pour imprimer en deux exemplaires
ce classeur et fermer l'application ; les utilisateurs n'étant pas
vraiment familier des ordinateurs ;-), je pensais que ces boutons leur
faciliterait la tâche ; c'est effectivement le cas, mais la cerise sur
le gateau serait de les obliger à clicker d'abord sur le bouton "
Enregistrement " et ensuite " Impression et Sortie " ; pas plus tard que
cet après midi, j'en ai encore un qui a oublié d'enregistrer des infos
avant l'impression/sortie ; je pensais donc essayer de trouver un petit
bout de code qui par le biais d'une MsgBox dirait à l'utilisateur qu'il
doit d'abord Enregistrer ; en deux mots, il faudrait que
l'impression/Sortie soit *impossible* si l'on a pas avant clicker sur le
bouton " Enregistrement " .

J'avoue très sincèrement que je ne sais pas trop comment m'y prendre
pour rédifer ma syntaxe.
Une fois de plus, j'ai besoin de votre aide.

Merci d'avance à tous les " pros " d'Excel ;-)

Cordialement

--
@+
Ayrton
http://cerbermail.com/?ljOK1CRTMt
Recherche dans les Archives :
http://groups.google.fr/group/microsoft.public.fr.windowsxp?hl=fr
Charte NG :
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm

7 réponses

Avatar
Jacky
Bonsoir,
Pourquoi ne pas procéder Systématiquement à un enregistrement avant de
fermer le fichier par le biais de:
'----------
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Ici code d'enregistrement
End Sub
'-------------
Salutations
JJ

"Ayrton [ASC]" a écrit dans le message de
news:%
Bonsoir à tous,

Dans le but d"éviter à certains utilisateurs d'oublier defaire des
enregistrements, je cherche un petit bout de code mepermettant de faire
cela; je m'explique :
Dans un classeur oèu des utilisateurs saisissent certaines informations,
j'ai fait deux boutons ; le premier avec une syntaxe que l'on m'a donné
sur ce forum et qui permet de sauvegarder en .txt le classeur et le
second où j'ai rajouté un peu de code pour imprimer en deux exemplaires
ce classeur et fermer l'application ; les utilisateurs n'étant pas
vraiment familier des ordinateurs ;-), je pensais que ces boutons leur
faciliterait la tâche ; c'est effectivement le cas, mais la cerise sur
le gateau serait de les obliger à clicker d'abord sur le bouton "
Enregistrement " et ensuite " Impression et Sortie " ; pas plus tard que
cet après midi, j'en ai encore un qui a oublié d'enregistrer des infos
avant l'impression/sortie ; je pensais donc essayer de trouver un petit
bout de code qui par le biais d'une MsgBox dirait à l'utilisateur qu'il
doit d'abord Enregistrer ; en deux mots, il faudrait que
l'impression/Sortie soit *impossible* si l'on a pas avant clicker sur le
bouton " Enregistrement " .

J'avoue très sincèrement que je ne sais pas trop comment m'y prendre
pour rédifer ma syntaxe.
Une fois de plus, j'ai besoin de votre aide.

Merci d'avance à tous les " pros " d'Excel ;-)

Cordialement

--
@+
Ayrton
http://cerbermail.com/?ljOK1CRTMt
Recherche dans les Archives :
http://groups.google.fr/group/microsoft.public.fr.windowsxp?hl=fr
Charte NG :
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm



Avatar
michdenis
Bonjour Ayrton,


Copie ceci dans le ThisWorkbook de ton fichier.

Cette procédure va s'exécuter à chaque fermerture du classeur
Si il y a eu une modification quelconque.

'----------------------
Private Sub Workbook_BeforeClose(Cancel As Boolean)

If Me.Saved = False Then
Enregistrement
ImpressionEtSortie
End If

End Sub
'----------------------


Salutations!



"Ayrton [ASC]" a écrit dans le message de news: %
Bonsoir à tous,

Dans le but d"éviter à certains utilisateurs d'oublier defaire des
enregistrements, je cherche un petit bout de code mepermettant de faire
cela; je m'explique :
Dans un classeur oèu des utilisateurs saisissent certaines informations,
j'ai fait deux boutons ; le premier avec une syntaxe que l'on m'a donné
sur ce forum et qui permet de sauvegarder en .txt le classeur et le
second où j'ai rajouté un peu de code pour imprimer en deux exemplaires
ce classeur et fermer l'application ; les utilisateurs n'étant pas
vraiment familier des ordinateurs ;-), je pensais que ces boutons leur
faciliterait la tâche ; c'est effectivement le cas, mais la cerise sur
le gateau serait de les obliger à clicker d'abord sur le bouton "
Enregistrement " et ensuite " Impression et Sortie " ; pas plus tard que
cet après midi, j'en ai encore un qui a oublié d'enregistrer des infos
avant l'impression/sortie ; je pensais donc essayer de trouver un petit
bout de code qui par le biais d'une MsgBox dirait à l'utilisateur qu'il
doit d'abord Enregistrer ; en deux mots, il faudrait que
l'impression/Sortie soit *impossible* si l'on a pas avant clicker sur le
bouton " Enregistrement " .

J'avoue très sincèrement que je ne sais pas trop comment m'y prendre
pour rédifer ma syntaxe.
Une fois de plus, j'ai besoin de votre aide.

Merci d'avance à tous les " pros " d'Excel ;-)

Cordialement

--
@+
Ayrton
http://cerbermail.com/?ljOK1CRTMt
Recherche dans les Archives :
http://groups.google.fr/group/microsoft.public.fr.windowsxp?hl=fr
Charte NG :
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm
Avatar
Ayrton [ASC]
Bonjour *Jacky*
Dans ton message de
news:,
tu nous envoyais cette missive :-(*)
Bonsoir,
Pourquoi ne pas procéder Systématiquement à un enregistrement avant de
fermer le fichier par le biais de:
'----------
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Ici code d'enregistrement
End Sub


Eh bien parce qu'il faut *absolument* imprimer le classeur aussi ; donc
j'ai un click qui sauvegarde ( ça doit prendre 1 seconde) puis sur le
bouton du dessous, un click et il y a automatiquement impression puis
fermeture du classeur ; mais je peux peut petre tester ta solution, à
savoir, imprimer en premier ( en supprimant la ligne Application.quit )
etmettre mon code dans l'évènement BeforeClose ?

Si je n'ai pas d'autres propositions, j'essaierais.
En tout cas, merci de ton aide

Coridalement

--
@+
Ayrton
http://cerbermail.com/?ljOK1CRTMt
Recherche dans les Archives :
http://groups.google.fr/group/microsoft.public.fr.windowsxp?hl=fr
Charte NG :
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm

Avatar
anonymousA
Bonjour

peux te proposer encore plus radical. 2 boutons (boutons de la BO
controles) , l'un que j'ai dénommé Enreg et l'auutre Imprimer. Par
défaut dans les propriétés du bouton Imprimer celui-ci est
initialement désactivé ( propriété Enabled à false).

A placer dans le module de feuille qui abrite les boutons

Private Sub Enreg_Click()
'ici lancer ta procédure d'enregistrement
Me.Imprimer.Enabled = True
End Sub

Private Sub Imprimer_Click()
Me.Imprimer.Enabled = False
'ici lancer ta procédure d'impression
End Sub

Dans ces conditions tant que tu n'as pas cliqué sur le bouton Imprimer
celui-ci est désactivé. une fois cliqué sur le bouton Enreg alors
ton bouton Imprimer s'active.A l'ientrée de la procédure
Imprimer_Click, ce même bouton se désactive à nouveau puis ta proc
d'impression s'exécute.

A+
Avatar
Ayrton [ASC]
Bonjour *michdenis*
Dans ton message de
news:,
tu nous envoyais cette missive :-(*)
Bonjour Ayrton,


Bonjour Michedenis,
Copie ceci dans le ThisWorkbook de ton fichier.

Cette procédure va s'exécuter à chaque fermerture du classeur
Si il y a eu une modification quelconque.

'----------------------
Private Sub Workbook_BeforeClose(Cancel As Boolean)

If Me.Saved = False Then
Enregistrement
ImpressionEtSortie
End If

End Sub


Encore une fois, un grand merci à toi ;-)

Bien à toi

--
@+
Ayrton
http://cerbermail.com/?ljOK1CRTMt
Recherche dans les Archives :
http://groups.google.fr/group/microsoft.public.fr.windowsxp?hl=fr
Charte NG :
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm

Avatar
Ayrton [ASC]
Bonjour *anonymousA*
Dans ton message de
news:,
tu nous envoyais cette missive :-(*)
Bonjour


Bonjour,

peux te proposer encore plus radical. 2 boutons (boutons de la BO
controles) , l'un que j'ai dénommé Enreg et l'auutre Imprimer. Par
défaut dans les propriétés du bouton Imprimer celui-ci est
initialement désactivé ( propriété Enabled à false).

A placer dans le module de feuille qui abrite les boutons

Private Sub Enreg_Click()
'ici lancer ta procédure d'enregistrement
Me.Imprimer.Enabled = True
End Sub

Private Sub Imprimer_Click()
Me.Imprimer.Enabled = False
'ici lancer ta procédure d'impression
End Sub

Dans ces conditions tant que tu n'as pas cliqué sur le bouton Imprimer
celui-ci est désactivé. une fois cliqué sur le bouton Enreg alors
ton bouton Imprimer s'active.A l'ientrée de la procédure
Imprimer_Click, ce même bouton se désactive à nouveau puis ta proc
d'impression s'exécute.


Merci beaucoup pour ton aide ; avec toutes vos propositions, je vais
être obligé de m'en sortir ! ;-)
Un très grand merci à vous tous.

Et vive ce NG que je connais pourtant peu.......
Vous êtres vraiment tous super sympas !

Bonne soirée à vous

--
@+
Ayrton
http://cerbermail.com/?ljOK1CRTMt
Recherche dans les Archives :
http://groups.google.fr/group/microsoft.public.fr.windowsxp?hl=fr
Charte NG :
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm

Avatar
Ayrton [ASC]
Re Michdenis,

Un grand merci ! Ca fonctionne pil poil comme je voulais ;-)
De plus, ça me permet de supprimer purement et simplement mes boutons
puisque j'ai rajouter deux lignes à ta syntaxe ce qu ifait que dès qu'il
y a modif du classeur ( donc dès que quelqu'un saisi ) tout s'applique e
nfermant par la petite croix ; c'est donc GENIAL ! ! ! !

Je cherchais la complication avec un bout de code disant en gros : Si
l'on a pas clickeé sur le bouton Enregistrer, alors le bouton Fermer est
inactif, sinon ok.
anonymousA y était presque sur le fond mais sa procédure ne fonctionne
pas ! !

Bonne soirée Michdenis et merci ;-)

--
@+
Ayrton
http://cerbermail.com/?ljOK1CRTMt
Recherche dans les Archives :
http://groups.google.fr/group/microsoft.public.fr.windowsxp?hl=fr
Charte NG :
http://support.microsoft.com/directory/worldwide/fr/newsgroup/regles.htm