améliorer un tableau avec des macros : probleme principal lenteur

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

P

Paddy

Guest
Bonjour à tous,
J'ai conçu un tableau pour les remboursements kilométriques des salariés dans plusieurs établissements avec une macro qui copie/colle un modele de tableau, une macro qui cache les colonnes en fonction du mois choisi de remboursement, une macro pour un ajustement des colonnes choisies, et il y a des somme.si dans le tableau..
Mon problème avec ce fichier est que au bout de une a deux minutes, les insertions sont lentes, les calculs sont lents, l'enregistrement est lent, bref, ca rame.
Est ce que quelqu'un pourrait m'aider à alléger les macros, les formules pour que l'utilisation soit rapide.
Merci d'avance
Fichier joint
 

Pièces jointes

Re : améliorer un tableau avec des macros : probleme principal lenteur

Bonjour James,
Oui il y a notamment la macro "nouveau salarié", mais il y a ausi je pense l'ajustement automatique des colonnes qui jouent unrole sur la lenteur et peut etre aussi les "somme.si" de la ligne total non?
Je ne suis pas un pro en vba loin de là , remarque ca se voit dans mes macros...
Merci de ton aide
Paddy
 
Re : améliorer un tableau avec des macros : probleme principal lenteur

Re,

Pour commencer un premier pas ... à tester

VB:
Option Explicit

Sub Nouveau_Salarie()
' Nouveau_Salarie Macro
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual

Worksheets("Bareme 2011").Range("modele_nouveau").Copy _
Destination:=Worksheets("KM Ets1").Range("A65536").End(xlUp).Offset(2, 0)

' Largeurs de colonnes
Columns("E:E").ColumnWidth = 9
Columns("F:F").ColumnWidth = 12
' Copie des Formats
Columns("E:F").Copy
Columns("G:AB").PasteSpecial Paste:=xlPasteFormats
' Largeurs de colonnes
Columns("AC:AD").ColumnWidth = 3
Columns("AE:AG").ColumnWidth = 14

Range("A10").Select
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True

End Sub

A +
🙂
 
Re : améliorer un tableau avec des macros : probleme principal lenteur

James, J'ai crié "victoire" trop vite
Dans le fichier que tu m'a envoyé, les colonnes ne se masquent plus en fonction du mois selectionné. De plus, la macro fonctionne sur la feuille "Km Ets1" mais pas sur les autres...Peux tu me réparer cela?
Merci d'avance
Paddu
 
Re : améliorer un tableau avec des macros : probleme principal lenteur

Re James,
En fait je viens de comprendre le problème.
Pour réduire le processus, tu as dans chaque feuille fait un
Private Sub CommandButton1_Click()
Nouveau_Salarie
End Sub
Ce qui est sympa car cela évite de recopier une macro longue, mais le souci est que dans cette macro copie le modèle et le colle sur "Km Ets 1), vu que cette macro est identique pour les autres feuilles, quand on click sur "nouveau salarié" dans les autres feuilles, la macro insére les lignes dans la feuille "Km Ets1". IL faudrait que la macro insère dans la feuille concernée les lignes "modele_nouveau"..
Ouh la même moi je ne me comprends pas...sourire.
En bref la macro copie les lignes "modele nouveau" que sur la feuile "Km Ets1" et pas sur la feuille ou l'on a cliqué "nouveau salarié".
Désolé James de ne pas être très clair
Merci pour ton aide
Paddy
 
Re : améliorer un tableau avec des macros : probleme principal lenteur

Re,

Une fois que tu auras réalisé tous tes tests, dis moi simplement si de ton côté, tout fonctionne correctement ... ou si tu trouves encore des modifs à faire ...

A +
🙂
 
Re : améliorer un tableau avec des macros : probleme principal lenteur

Re James,
Excuse mon retour tardif, j'ai du m'absenter l'après midi..
J'ai regardé le fichier et c'est quasi ce que je souhaite.
J'ai juste une demande de modif concernant les colonnes cachées, car lorsque je clic sur le bouton "nouveau salarié", cela me rajoute bien un nouveau modele mais ca reaffiche les colonnes, je reclic sur le choix du mois, ca marche et dès que je rajoute un nouveau salarié les colonnes qui étaient masquées s'affichent..
Pourrez-tu faire en sorte qu'elles restent cachées lors d'un nouveau salarié?
Merci encore pour ton aide, c'est très sympa.
Paddy
 
- 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

A
Réponses
9
Affichages
1 K
Aurelien74
A
F
Réponses
2
Affichages
1 K
F
D
Réponses
5
Affichages
4 K
davids petrucci
D
Retour