Bonjour,
Dans le fichier ci-joint, j’ai tenté de faire apparaître un UserForm indiquant l’avancement de la macro. Selon les étapes, ça affiche Texte 1 ou 2. Dans mon fichier réel, j’aurai 5 à 6 étapes en tout.
Dans ce fichier modèle, si j’indique de traiter 20'000 lignes, ça fonctionne assez bien sur ma machine, le UserForm indique les textes désirés.
Si je traite disons 50'000 lignes par contre, ça ne va plus, j’ai durant un certain moment le texte ‘’UserForm1 ne répond pas’’ qui apparait.
Savez-vous comment résoudre ce problème ?
De plus, savez-vous comment faire disparaitre la croix blanche sur fond rouge (mais c’est presque un drapeau suisse ça ) du UserForm visible à l’écran ?
Voici mon code actuel :
Sub rr()
Application.ScreenUpdating = False
xx = InputBox("Combien de cellules doivent être modifiées ? Par exemple 50'000 c'est pas mal.")
UserForm1.Show vbModeless
UserForm1.Label1.Caption = "Texte 1"
UserForm1.Repaint
For i = 1 To xx
Cells(i, 1) = Rnd
Next i
UserForm1.Label1.Caption = "Texte 2"
UserForm1.Repaint
For i = 1 To xx
Cells(i, 2) = Rnd
Next i
Unload UserForm1
End Sub
Cordialement.