Bonjour
Je suis un débutant dans tous ce qui est programmation, je trouve les codes VBA intéressants et pratique car j’utilise beaucoup excel dans mon travail.
j’essai de créer un fichier de collecte de données pour des personnes qui ne sont pas adepte d’outils en bureautique, surtout excel.
j’essai de faire une synthèse dans un tableau qui est dans l’onglet “Dashboard” et qui collecte les information concernant la moyenne de stock, la moyenne de rotation et la disponibilité de 17 produits (l’exemple de code que j’ai fait prend que 2 produits) de cellules qui se trouve sur 12 onglets différents du même classeur, de Janvier à Décembre, Voila le code :
Sub copy_valeurs_All()
Application.ScreenUpdating = False
'I-Pour tous les secteurs “All”
'------------------------------
'I-1 1er Produit
'---------------
'Format cellule en nombre
Range(“AD6:AO6”).Select
Selection.NumberFormat = “0”
'Copy moyenne de stock
Sheets(“Dashboard”).Range(“AD6”) = Sheets(“Janvier”).Range(“F226”).Value
Sheets(“Dashboard”).Range(“AE6”) = Sheets(“Fevrier”).Range(“F226”).Value
Sheets(“Dashboard”).Range(“AF6”) = Sheets(“Mars”).Range(“F226”).Value
Sheets(“Dashboard”).Range(“AG6”) = Sheets(“Avril”).Range(“F226”).Value
Sheets(“Dashboard”).Range(“AH6”) = Sheets(“Mai”).Range(“F226”).Value
Sheets(“Dashboard”).Range(“AI6”) = Sheets(“Juin”).Range(“F226”).Value
Sheets(“Dashboard”).Range(“AJ6”) = Sheets(“Juillet”).Range(“F226”).Value
Sheets(“Dashboard”).Range(“AK6”) = Sheets(“Aout”).Range(“F226”).Value
Sheets(“Dashboard”).Range(“AL6”) = Sheets(“Septembre”).Range(“F226”).Value
Sheets(“Dashboard”).Range(“AM6”) = Sheets(“Octobre”).Range(“F226”).Value
Sheets(“Dashboard”).Range(“AN6”) = Sheets(“Novembre”).Range(“F226”).Value
Sheets(“Dashboard”).Range(“AO6”) = Sheets(“Décembre”).Range(“F226”).Value
'Format cellule en nombre
Range(“AD7:AO7”).Select
Selection.NumberFormat = “0”
'Copy moyenne de rotation
Sheets(“Dashboard”).Range(“AD7”) = Sheets(“Janvier”).Range(“G226”).Value
Sheets(“Dashboard”).Range(“AE7”) = Sheets(“Fevrier”).Range(“G226”).Value
Sheets(“Dashboard”).Range(“AF7”) = Sheets(“Mars”).Range(“G226”).Value
Sheets(“Dashboard”).Range(“AG7”) = Sheets(“Avril”).Range(“G226”).Value
Sheets(“Dashboard”).Range(“AH7”) = Sheets(“Mai”).Range(“G226”).Value
Sheets(“Dashboard”).Range(“AI7”) = Sheets(“Juin”).Range(“G226”).Value
Sheets(“Dashboard”).Range(“AJ7”) = Sheets(“Juillet”).Range(“G226”).Value
Sheets(“Dashboard”).Range(“AK7”) = Sheets(“Aout”).Range(“G226”).Value
Sheets(“Dashboard”).Range(“AL7”) = Sheets(“Septembre”).Range(“G226”).Value
Sheets(“Dashboard”).Range(“AM7”) = Sheets(“Octobre”).Range(“G226”).Value
Sheets(“Dashboard”).Range(“AN7”) = Sheets(“Novembre”).Range(“G226”).Value
Sheets(“Dashboard”).Range(“AO7”) = Sheets(“Décembre”).Range(“G226”).Value
'Format cellule en pourcentage
Range(“AD8:AO8”).Select
Selection.NumberFormat = “0%”
'Copy moyenne de Disponibilité
Sheets(“Dashboard”).Range(“AD8”) = Sheets(“Janvier”).Range(“H226”).Value
Sheets(“Dashboard”).Range(“AE8”) = Sheets(“Fevrier”).Range(“H226”).Value
Sheets(“Dashboard”).Range(“AF8”) = Sheets(“Mars”).Range(“H226”).Value
Sheets(“Dashboard”).Range(“AG8”) = Sheets(“Avril”).Range(“H226”).Value
Sheets(“Dashboard”).Range(“AH8”) = Sheets(“Mai”).Range(“H226”).Value
Sheets(“Dashboard”).Range(“AI8”) = Sheets(“Juin”).Range(“H226”).Value
Sheets(“Dashboard”).Range(“AJ8”) = Sheets(“Juillet”).Range(“H226”).Value
Sheets(“Dashboard”).Range(“AK8”) = Sheets(“Aout”).Range(“H226”).Value
Sheets(“Dashboard”).Range(“AL8”) = Sheets(“Septembre”).Range(“H226”).Value
Sheets(“Dashboard”).Range(“AM8”) = Sheets(“Octobre”).Range(“H226”).Value
Sheets(“Dashboard”).Range(“AN8”) = Sheets(“Novembre”).Range(“H226”).Value
Sheets(“Dashboard”).Range(“AO8”) = Sheets(“Décembre”).Range(“H226”).Value
'I-2 2ème Produit
'----------------
'Format cellule en nombre
Range(“AD9:AO9”).Select
Selection.NumberFormat = “0”
'Copy moyenne de stock
Sheets(“Dashboard”).Range(“AD9”) = Sheets(“Janvier”).Range(“I226”).Value
Sheets(“Dashboard”).Range(“AE9”) = Sheets(“Fevrier”).Range(“I226”).Value
Sheets(“Dashboard”).Range(“AF9”) = Sheets(“Mars”).Range(“I226”).Value
Sheets(“Dashboard”).Range(“AG9”) = Sheets(“Avril”).Range(“I226”).Value
Sheets(“Dashboard”).Range(“AH9”) = Sheets(“Mai”).Range(“I226”).Value
Sheets(“Dashboard”).Range(“AI9”) = Sheets(“Juin”).Range(“I226”).Value
Sheets(“Dashboard”).Range(“AJ9”) = Sheets(“Juillet”).Range(“I226”).Value
Sheets(“Dashboard”).Range(“AK9”) = Sheets(“Aout”).Range(“I226”).Value
Sheets(“Dashboard”).Range(“AL9”) = Sheets(“Septembre”).Range(“I226”).Value
Sheets(“Dashboard”).Range(“AM9”) = Sheets(“Octobre”).Range(“I226”).Value
Sheets(“Dashboard”).Range(“AN9”) = Sheets(“Novembre”).Range(“I226”).Value
Sheets(“Dashboard”).Range(“AO9”) = Sheets(“Décembre”).Range(“I226”).Value
'Format cellule en nombre
Range(“AD10:AO10”).Select
Selection.NumberFormat = “0”
'Copy moyenne de rotation
Sheets(“Dashboard”).Range(“AD10”) = Sheets(“Janvier”).Range(“J226”).Value
Sheets(“Dashboard”).Range(“AE10”) = Sheets(“Fevrier”).Range(“J226”).Value
Sheets(“Dashboard”).Range(“AF10”) = Sheets(“Mars”).Range(“J226”).Value
Sheets(“Dashboard”).Range(“AG10”) = Sheets(“Avril”).Range(“J226”).Value
Sheets(“Dashboard”).Range(“AH10”) = Sheets(“Mai”).Range(“J226”).Value
Sheets(“Dashboard”).Range(“AI10”) = Sheets(“Juin”).Range(“J226”).Value
Sheets(“Dashboard”).Range(“AJ10”) = Sheets(“Juillet”).Range(“J226”).Value
Sheets(“Dashboard”).Range(“AK10”) = Sheets(“Aout”).Range(“J226”).Value
Sheets(“Dashboard”).Range(“AL10”) = Sheets(“Septembre”).Range(“J226”).Value
Sheets(“Dashboard”).Range(“AM10”) = Sheets(“Octobre”).Range(“J226”).Value
Sheets(“Dashboard”).Range(“AN10”) = Sheets(“Novembre”).Range(“J226”).Value
Sheets(“Dashboard”).Range(“AO10”) = Sheets(“Décembre”).Range(“J226”).Value
'Format cellule en pourcentage
Range(“AD11:AO11”).Select
Selection.NumberFormat = “0%”
'Copy moyenne de Disponibilité
Sheets(“Dashboard”).Range(“AD11”) = Sheets(“Janvier”).Range(“K226”).Value
Sheets(“Dashboard”).Range(“AE11”) = Sheets(“Fevrier”).Range(“K226”).Value
Sheets(“Dashboard”).Range(“AF11”) = Sheets(“Mars”).Range(“K226”).Value
Sheets(“Dashboard”).Range(“AG11”) = Sheets(“Avril”).Range(“K226”).Value
Sheets(“Dashboard”).Range(“AH11”) = Sheets(“Mai”).Range(“K226”).Value
Sheets(“Dashboard”).Range(“AI11”) = Sheets(“Juin”).Range(“K226”).Value
Sheets(“Dashboard”).Range(“AJ11”) = Sheets(“Juillet”).Range(“K226”).Value
Sheets(“Dashboard”).Range(“AK11”) = Sheets(“Aout”).Range(“K226”).Value
Sheets(“Dashboard”).Range(“AL11”) = Sheets(“Septembre”).Range(“K226”).Value
Sheets(“Dashboard”).Range(“AM11”) = Sheets(“Octobre”).Range(“K226”).Value
Sheets(“Dashboard”).Range(“AN11”) = Sheets(“Novembre”).Range(“K226”).Value
Sheets(“Dashboard”).Range(“AO11”) = Sheets(“Décembre”).Range(“K226”).Value
Application.ScreenUpdating = True
End Sub
Le code marche cela dit l’exécution est très lente, tellement que l’attente est handicapante, c’est due surement au nombreuses lignes de commandes.
Y a t’il une façon de simplifier les choses.
Merci beaucoup pour votre aide.