Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Barre de Progression

  • Initiateur de la discussion Initiateur de la discussion Acnd31
  • 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 !

A

Acnd31

Guest
Bonjour à tous,

Je vous expose mon problème:

J'ai un fichier contenant plus de 55'000 lignes sur 20 colonnes remplient d'informations. Je dois quotidiennement les mettre à jours. Pour cela, j'ai une macro qui fonctionne bien, mais qui dure plus d'une demi heure.

Alors pour me rendre compte de l'avancement, je me suis dis qu'une progressbar avec un petit texte indiquant les articles restants à traiter serait sympa.

Mais voilà, lorsque je lance la macro "pas à pas", tous va bien, mais dés que je la lance en "automatique", la userform se fige, le texte ne se met plus à jour. Donc je ne vois plus l'avancement de la macro.

Quelqu'un a-t'il une idée pour m'aider?

Merci d'avance

Meilleures salutations
 
Re : Barre de Progression

Bonjour acnd

n'aurais tu pas une ligne de code comme ci dessous, au début de ta macro :

Code:
Application.ScreenUpdating = False

cette instruction désactive le raffraichissement d'écran...

bonne journée
@+
 
Re : Barre de Progression

Voilà celle que j'utilise pour tester la barre de progression

Public Sub TransfertDonnees()
On Error Resume Next

Application.ScreenUpdating = False

Sheets("Feuil2").Select

Dim i As Long
Dim Val As String
Dim pc
UF1.Show 0
For i = 1 To 10000

pc = Round(((100 / 10000) * i), 0)

UF1.Label1.Caption = "Transfert de : " & i & " Chiffres"
UF1.Show 0
UF1.ProgressBar1.Value = pc
Sheets("Feuil2").Select
Range("A1").Select
Val = ActiveCell.Offset(i, 0).Value

Sheets("Feuil1").Select
Range("A1").Select
ActiveCell.Offset(i, 0).Value = Val
Next i
UF1.Hide
End Sub


Merci de ton aide
 
Re : Barre de Progression

Voilà celui que j'utilise pour faire les essais de progressbar

le UF1 est un userform avec une progressbar et un label

merci de ton aide


Public Sub TransfertDonnees()
On Error Resume Next
Application.ScreenUpdating = False
Sheets("Feuil2").Select

Dim i As Long
Dim Val As String
Dim pc
UF1.Show 0
For i = 1 To 10000

pc = Round(((100 / 10000) * i), 0)

UF1.Label1.Caption = "Transfert de : " & i & " Chiffres"
UF1.Show 0
UF1.ProgressBar1.Value = pc
Sheets("Feuil2").Select
Range("A1").Select
Val = ActiveCell.Offset(i, 0).Value

Sheets("Feuil1").Select
Range("A1").Select
ActiveCell.Offset(i, 0).Value = Val
Next i
UF1.Hide
End Sub
 
Re : Barre de Progression

J'ai résolu mon problème. En mettant un userform.repaint, ça marche. le texte ce remet automatiquement à jour.

Merci quand même Pierrot de t'être penché sur mon problème
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
5
Affichages
1 K
D
Réponses
4
Affichages
436
DidPouAxi
D
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…