Bonjour à tous,
J'ai essayer de réaliser un fichier excel de gestion de commande en y intégrant une macro lier au remplissage d'un formulaire.
Malheureusement, à l'exécution de cette macro, j'ai des problèmes d'affichage comme des bug sur mon onglet.
En me renseignant un peu, j'ai cru comprendre que ce problème était lier à la manière dont j'ai réaliser la macro.
Ayant utilisé l'outil d'enregistrement de macro, le fait qu'il y'ait plusieurs sélection de cellule d'un onglet à l'autre provoquerait ce problème.
J'ai crus comprendre que je devait "nettoyer" ma macro afin de la rendre plus rapide et ne plus avoir cette problématique.
Malheureusement, mes compétences ne sont pas assez grandes pour faire cela ^^
Je demande donc si quelqu'un pourrait m'aider pour arriver à "optimiser" cette macro ?
Le but de cette macro est de transférer les informations entrées dans le formulaire directement dans un tableau.
Ci-joint la macro :
Sub NvlCommande()
'
' NvlCommande Macro
'
'
Range("C6").Select
Sheets("Commande").Select
Rows("2:2").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Sheets("Formulaire").Select
Selection.Copy
Sheets("Commande").Select
Range("A2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Formulaire").Select
Range("E6").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Commande").Select
Range("B2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Formulaire").Select
Range("C9").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Commande").Select
Range("C2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Formulaire").Select
Range("C12").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Commande").Select
Range("D2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Formulaire").Select
Range("C15").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Commande").Select
Range("E2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Formulaire").Select
Range("C18").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Commande").Select
Range("F2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Formulaire").Select
Range("C21").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Commande").Select
Range("G2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Formulaire").Select
Range("C21,C6,E6,C9,C12,C15,C18").Select
Range("C18").Activate
Application.CutCopyMode = False
Selection.ClearContents
Range("C6").Select
End Sub
J'ai essayer de réaliser un fichier excel de gestion de commande en y intégrant une macro lier au remplissage d'un formulaire.
Malheureusement, à l'exécution de cette macro, j'ai des problèmes d'affichage comme des bug sur mon onglet.
En me renseignant un peu, j'ai cru comprendre que ce problème était lier à la manière dont j'ai réaliser la macro.
Ayant utilisé l'outil d'enregistrement de macro, le fait qu'il y'ait plusieurs sélection de cellule d'un onglet à l'autre provoquerait ce problème.
J'ai crus comprendre que je devait "nettoyer" ma macro afin de la rendre plus rapide et ne plus avoir cette problématique.
Malheureusement, mes compétences ne sont pas assez grandes pour faire cela ^^
Je demande donc si quelqu'un pourrait m'aider pour arriver à "optimiser" cette macro ?
Le but de cette macro est de transférer les informations entrées dans le formulaire directement dans un tableau.
Ci-joint la macro :
Sub NvlCommande()
'
' NvlCommande Macro
'
'
Range("C6").Select
Sheets("Commande").Select
Rows("2:2").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Sheets("Formulaire").Select
Selection.Copy
Sheets("Commande").Select
Range("A2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Formulaire").Select
Range("E6").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Commande").Select
Range("B2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Formulaire").Select
Range("C9").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Commande").Select
Range("C2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Formulaire").Select
Range("C12").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Commande").Select
Range("D2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Formulaire").Select
Range("C15").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Commande").Select
Range("E2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Formulaire").Select
Range("C18").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Commande").Select
Range("F2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Formulaire").Select
Range("C21").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Commande").Select
Range("G2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Formulaire").Select
Range("C21,C6,E6,C9,C12,C15,C18").Select
Range("C18").Activate
Application.CutCopyMode = False
Selection.ClearContents
Range("C6").Select
End Sub