Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Fenêtre d'avertissement quand un calcul manuel prend du temps!

6 réponses
Avatar
Gregory Hilaire
Bien le bonjour à tous le groupe.

Je sollicite votre aide sur la question suivante. J'ai un fichier de calcul
qui pour faire ses mises à jour prend un temps
certain. Pour limiter les dégâts je l'ai mis en calcul manuel. Quand on doit
faire la mise à jour cela prend tellement de
ressources que l'on pourrait penser que l'ordinateur gèle. J'aimerais ( si
possible ) que lorsque l'on presse [F9] un
message genre ( splash screen ) apparaisse pour demander gentiment de
patienter et que cette fenêtre disparaisse
une fois le traitement achevé.

Merci pour tout aide.
Une bonne journée à tous.

6 réponses

Avatar
MichDenis
Dans ton ThisWorkbook de ton classeur, tu copies ces procédures:
'-----------------------------
Private Sub Workbook_Activate()
Application.OnKey "{F9}", "toto"
End Sub
'-----------------------------
Private Sub Workbook_Deactivate()
Application.OnKey "{F9}"
End Sub
'-----------------------------

Dans un module standard, ceci :
'--------------------------------
Sub toto()
MsgBox "Attention, je calcule, le temps c'est de l'argent."
ActiveSheet.Calculate
End Sub
'--------------------------------

Et dans ton ThisWorkbook, tu peux ajouter ceci si tu veux
que le raccourci clavier F9 s'applique seulement au classeur désigné:

Ferme ton classeur et ré-ouvre-le !




"Gregory Hilaire" a écrit dans le message de news:

Bien le bonjour à tous le groupe.

Je sollicite votre aide sur la question suivante. J'ai un fichier de calcul
qui pour faire ses mises à jour prend un temps
certain. Pour limiter les dégâts je l'ai mis en calcul manuel. Quand on doit
faire la mise à jour cela prend tellement de
ressources que l'on pourrait penser que l'ordinateur gèle. J'aimerais ( si
possible ) que lorsque l'on presse [F9] un
message genre ( splash screen ) apparaisse pour demander gentiment de
patienter et que cette fenêtre disparaisse
une fois le traitement achevé.

Merci pour tout aide.
Une bonne journée à tous.
Avatar
Philippe.R
Bonjour,
Tu peux créer une zone de texte avec les indications qui te conviennent et
l'appeler par l'évènement calculate de la feuille à l'aide de la ligne de
commande :
ActiveSheet.Shapes("Text Box 1").Visible = True
et mettre cette ligne à False à la fin de ta procédure
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Gregory Hilaire" a écrit dans le message de
news:
Bien le bonjour à tous le groupe.

Je sollicite votre aide sur la question suivante. J'ai un fichier de
calcul qui pour faire ses mises à jour prend un temps
certain. Pour limiter les dégâts je l'ai mis en calcul manuel. Quand on
doit faire la mise à jour cela prend tellement de
ressources que l'on pourrait penser que l'ordinateur gèle. J'aimerais ( si
possible ) que lorsque l'on presse [F9] un
message genre ( splash screen ) apparaisse pour demander gentiment de
patienter et que cette fenêtre disparaisse
une fois le traitement achevé.

Merci pour tout aide.
Une bonne journée à tous.







Avatar
Gregory Hilaire
Merci MichDenis, Merci Philippe.R
C'est tellement élégant et simple vos solutions
que j'en ai la mâchoire sur les genoux!

Passez une excellente Semaine!

Greg!

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de news:
%
Bonjour,
Tu peux créer une zone de texte avec les indications qui te conviennent et
l'appeler par l'évènement calculate de la feuille à l'aide de la ligne de
commande :
ActiveSheet.Shapes("Text Box 1").Visible = True
et mettre cette ligne à False à la fin de ta procédure
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Gregory Hilaire" a écrit dans le message de
news:
Bien le bonjour à tous le groupe.

Je sollicite votre aide sur la question suivante. J'ai un fichier de
calcul qui pour faire ses mises à jour prend un temps
certain. Pour limiter les dégâts je l'ai mis en calcul manuel. Quand on
doit faire la mise à jour cela prend tellement de
ressources que l'on pourrait penser que l'ordinateur gèle. J'aimerais (
si possible ) que lorsque l'on presse [F9] un
message genre ( splash screen ) apparaisse pour demander gentiment de
patienter et que cette fenêtre disparaisse
une fois le traitement achevé.

Merci pour tout aide.
Une bonne journée à tous.










Avatar
Gregory Hilaire
Re bonjour

Une question jusque là sans réponse de mon côté me turlupine l'esprit
Associé à Thisworkbook J'ai ceci

' Dans This workbook =============================== Private Sub Workbook_Activate()
Application.OnKey "{F9}", "Information"
End Sub

Private Sub Workbook_Deactivate()
Application.OnKey "{F9}"
End Sub


Dans mon module J'ai ceci ==============================
Function Calcul(Nombre) As Variant
For X = 1 To Nombre * 10
For y = 1 To 100000
Next y
Next X
Calcul = 2 * Nombre
End Function

Sub Information()
UserForm1.Show 0
ActiveSheet.Calculate
Unload UserForm1
End Sub
=================================================
Et J'ai un formulaire UserForm1 Qui devrait afficher le message mais à
l'execution
l'intérieur du formulaire reste vide. Si je mets un msgBox tout juste à près
l'affichage
là il paraît ou en modal il parait mais dans les deux cas cela ne convient
pas car le
but de l'exercice c'est justement que l'on aie rien à cliquer ...

Toute idée du pourquoi de ce comment sera la bienvenue ... :)

Juste pour illustration
http://cjoint.com/?cBbcWUVPnP

Greg

"Gregory Hilaire" a écrit dans le message de news:
%
Merci MichDenis, Merci Philippe.R
C'est tellement élégant et simple vos solutions
que j'en ai la mâchoire sur les genoux!

Passez une excellente Semaine!

Greg!

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de news:
%
Bonjour,
Tu peux créer une zone de texte avec les indications qui te conviennent
et l'appeler par l'évènement calculate de la feuille à l'aide de la ligne
de commande :
ActiveSheet.Shapes("Text Box 1").Visible = True
et mettre cette ligne à False à la fin de ta procédure
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Gregory Hilaire" a écrit dans le message de
news:
Bien le bonjour à tous le groupe.

Je sollicite votre aide sur la question suivante. J'ai un fichier de
calcul qui pour faire ses mises à jour prend un temps
certain. Pour limiter les dégâts je l'ai mis en calcul manuel. Quand on
doit faire la mise à jour cela prend tellement de
ressources que l'on pourrait penser que l'ordinateur gèle. J'aimerais
( si possible ) que lorsque l'on presse [F9] un
message genre ( splash screen ) apparaisse pour demander gentiment de
patienter et que cette fenêtre disparaisse
une fois le traitement achevé.

Merci pour tout aide.
Une bonne journée à tous.














Avatar
MichDenis
Tu ajoutes :

Sub Information()
UserForm1.Show 0
UserForm1.Repaint 'Ajout
'OU
'DoEvents ' Cette commande te donne le même résultat.
ActiveSheet.Calculate
Unload UserForm1
End Sub



"Gregory Hilaire" a écrit dans le message de news:

Re bonjour

Une question jusque là sans réponse de mon côté me turlupine l'esprit
Associé à Thisworkbook J'ai ceci

' Dans This workbook =============================== Private Sub Workbook_Activate()
Application.OnKey "{F9}", "Information"
End Sub

Private Sub Workbook_Deactivate()
Application.OnKey "{F9}"
End Sub


Dans mon module J'ai ceci ==============================
Function Calcul(Nombre) As Variant
For X = 1 To Nombre * 10
For y = 1 To 100000
Next y
Next X
Calcul = 2 * Nombre
End Function

Sub Information()
UserForm1.Show 0
ActiveSheet.Calculate
Unload UserForm1
End Sub
=================================================
Et J'ai un formulaire UserForm1 Qui devrait afficher le message mais à
l'execution
l'intérieur du formulaire reste vide. Si je mets un msgBox tout juste à près
l'affichage
là il paraît ou en modal il parait mais dans les deux cas cela ne convient
pas car le
but de l'exercice c'est justement que l'on aie rien à cliquer ...

Toute idée du pourquoi de ce comment sera la bienvenue ... :)

Juste pour illustration
http://cjoint.com/?cBbcWUVPnP

Greg

"Gregory Hilaire" a écrit dans le message de news:
%
Merci MichDenis, Merci Philippe.R
C'est tellement élégant et simple vos solutions
que j'en ai la mâchoire sur les genoux!

Passez une excellente Semaine!

Greg!

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de news:
%
Bonjour,
Tu peux créer une zone de texte avec les indications qui te conviennent
et l'appeler par l'évènement calculate de la feuille à l'aide de la ligne
de commande :
ActiveSheet.Shapes("Text Box 1").Visible = True
et mettre cette ligne à False à la fin de ta procédure
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Gregory Hilaire" a écrit dans le message de
news:
Bien le bonjour à tous le groupe.

Je sollicite votre aide sur la question suivante. J'ai un fichier de
calcul qui pour faire ses mises à jour prend un temps
certain. Pour limiter les dégâts je l'ai mis en calcul manuel. Quand on
doit faire la mise à jour cela prend tellement de
ressources que l'on pourrait penser que l'ordinateur gèle. J'aimerais
( si possible ) que lorsque l'on presse [F9] un
message genre ( splash screen ) apparaisse pour demander gentiment de
patienter et que cette fenêtre disparaisse
une fois le traitement achevé.

Merci pour tout aide.
Une bonne journée à tous.














Avatar
Gregory Hilaire
Nikel! Je n'ai rien à ajouter!

Je vais "googler" de mon côté ces deux Instructions La méthode Repaint et le
Doevents
Pour savoir comment et pourquoi ils ont résolu le bobo mais encore une fois
Chapeau mich

Bonne Journée


"MichDenis" a écrit dans le message de news:

Tu ajoutes :

Sub Information()
UserForm1.Show 0
UserForm1.Repaint 'Ajout
'OU
'DoEvents ' Cette commande te donne le même résultat.
ActiveSheet.Calculate
Unload UserForm1
End Sub



"Gregory Hilaire" a écrit dans le message de news:

Re bonjour

Une question jusque là sans réponse de mon côté me turlupine l'esprit
Associé à Thisworkbook J'ai ceci

' Dans This workbook =============================== > Private Sub Workbook_Activate()
Application.OnKey "{F9}", "Information"
End Sub

Private Sub Workbook_Deactivate()
Application.OnKey "{F9}"
End Sub


Dans mon module J'ai ceci ============================== >
Function Calcul(Nombre) As Variant
For X = 1 To Nombre * 10
For y = 1 To 100000
Next y
Next X
Calcul = 2 * Nombre
End Function

Sub Information()
UserForm1.Show 0
ActiveSheet.Calculate
Unload UserForm1
End Sub
================================================= >
Et J'ai un formulaire UserForm1 Qui devrait afficher le message mais à
l'execution
l'intérieur du formulaire reste vide. Si je mets un msgBox tout juste à
près
l'affichage
là il paraît ou en modal il parait mais dans les deux cas cela ne convient
pas car le
but de l'exercice c'est justement que l'on aie rien à cliquer ...

Toute idée du pourquoi de ce comment sera la bienvenue ... :)

Juste pour illustration
http://cjoint.com/?cBbcWUVPnP

Greg

"Gregory Hilaire" a écrit dans le message de news:
%
Merci MichDenis, Merci Philippe.R
C'est tellement élégant et simple vos solutions
que j'en ai la mâchoire sur les genoux!

Passez une excellente Semaine!

Greg!

"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:
%
Bonjour,
Tu peux créer une zone de texte avec les indications qui te conviennent
et l'appeler par l'évènement calculate de la feuille à l'aide de la
ligne
de commande :
ActiveSheet.Shapes("Text Box 1").Visible = True
et mettre cette ligne à False à la fin de ta procédure
--
Avec plaisir
http://dj.joss.free.fr/trombine.htm
http://jacxl.free.fr/mpfe/trombino.html
Philippe.R
Pour se connecter au forum :
http://www.excelabo.net/mpfe/connexion.php
News://news.microsoft.com/microsoft.public.fr.excel
"Gregory Hilaire" a écrit dans le message de
news:
Bien le bonjour à tous le groupe.

Je sollicite votre aide sur la question suivante. J'ai un fichier de
calcul qui pour faire ses mises à jour prend un temps
certain. Pour limiter les dégâts je l'ai mis en calcul manuel. Quand on
doit faire la mise à jour cela prend tellement de
ressources que l'on pourrait penser que l'ordinateur gèle. J'aimerais
( si possible ) que lorsque l'on presse [F9] un
message genre ( splash screen ) apparaisse pour demander gentiment de
patienter et que cette fenêtre disparaisse
une fois le traitement achevé.

Merci pour tout aide.
Une bonne journée à tous.