Userform qui stoppe une macro

  • Initiateur de la discussion Initiateur de la discussion laurano
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

laurano

XLDnaute Junior
Bonjour,

J'ai mis en place une macro qui est assez longue à exécuter et je veux donc l'assompagner d'un userform qui donne l'état d'avancée de l'exécution. J'ai donc créé un userform que j'ai appelé ATTENTE et que j'ai intégré au niveau de ma macro comme suit :

Sub Traitement_RLP_Brut()
'
Application.ScreenUpdating = False

ATTENTE.TRAITEMENT.Caption = "RLP"
ATTENTE.DETAIL.Caption = "Mise en forme du relevé de prix..."
ATTENTE.Show

Sheets("DONNEES").Visible = True
Sheets("TRAITEMENT").Visible = True
Dim LRLP As Long
Sheets("RLP BRUT").Activate
LRLP = Range("A3").CurrentRegion.Rows.Count - 1

Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("G4").FormulaR1C1 = "=VALUE(RC[1])"
Range("g4").Select
Selection.AutoFill Destination:=Range(Cells(4, 7), Cells(4 + LRLP - 1, 7))
Range(Cells(4, 7), Cells(4 + LRLP - 1, 7)).Copy
Range(Cells(4, 8), Cells(4 + LRLP - 1, 8)).PasteSpecial Paste:=xlPasteValues
Columns("G:G").Select
Selection.Delete Shift:=xlToLeft

etc...

Mon problème est que en fait à partir du moment où ma fenêtre s'affiche, la macro s'arrête : plus exactement, ce n'est pas qu'elle s'arrête à proprement parler, mais elle n'avance plus. il faut que je ferme la fenêtre pour qu'elle reprenne son cours. Qu'est-ce que je dois faire pour que même quand la fenêtre s'affiche, le code qui suit continue à s'exécuter ?

Merci
 
Re : Userform qui stoppe une macro

Les temps d'exécution sont longs surtout parve qu'il y a beaucoup de recherchev qui se mettent en place. Ceci étant, tu as raison, il faut que je fasse le ménage dans les "select" dont je sais qu'effectivement ils ralentissent l'exécution. En revanche, pour les "activate", ça me parait plus difficile.

Quoiqu'il en soit, je vais essayer ton show0. Je n'utilisais pas cette instruction avec Excel 2003. J'imagine que c'est une nouveauté de 2007 ?
 
Re : Userform qui stoppe une macro

Bon j'ai pas compris ton instruction : j'avais cru comprendre qu'il fallait show0 mais non ça n'existe pas. Je me suis dit qu'il fallait que je mette un x à la fin du nom de l'usf mais ça marche pas non plus...
 
Re : Userform qui stoppe une macro

Bonjour Laurano,
Salut C² 😉

Ce que veux dire le squal, c'est l'utilisation du mode "Modal" à faux = 0
Et il n'a pas écris : userformx.Show0
Mais : userformx.Show[Espace]0

Sinon tu peux l'utiliser sous cette forme :
Code:
ATTENTE.Show (False)

A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
10
Affichages
555
Réponses
5
Affichages
483
Retour