3 pièce(s) jointe(s)
Création macro_mise en forme
Bonjour,
Je m'appelle Amaury je suis étudiant ingénieur, et je travail pour une sociéter qui fabrique des pièces de voiture.
On m'a confié un projet qui est d'améliorer l'utilisation d'un fichier excel. Malheureusement, je débute dans excel et tout ce qui est VBA et macro je ne m'y connais très peu voir quasiment pas. "Mais je sais me débrouiller..." → Exemple je joue sur la copie d'une ligne masquée pour avoir ce que je veux en rendu X) BIDOUILLAGE !
Je demande votre aide concernant une macro qui me permetterait d'insérer une ligne [COLOR="#008080"]« avec une mise en forme donc des formules copier et une flèche → voir Photo » [/COLOR]à un emplacement sélectionné en appuyant sur un seul bouton.
Pour décrire totalement ce que la macro doit faire se serait :
- Insérer une ligne au dessus de la cellule sélectionné
- Copier les formules de la ligne du dessus de C→AB
- Les collers dans la ligne insérer
- Enlever la bordure gauche de la cellule en B "+mettre en fond blanc A+B → Pas obligatoire"
- et insérer une flèche en B
Voici le code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
|
Sub test_macro_mise_en_forme()
'
' test_macro_mise_en_forme Macro
'
'
Rows(ActiveCell.Row).Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Range("A8:B8").Select
Range("B8").Activate
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorDark1
.TintAndShade = 0
.PatternTintAndShade = 0
End With
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
Selection.Borders(xlEdgeLeft).LineStyle = xlNone
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlMedium
End With
Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
Range("C7:AB7").Select
Selection.Copy
Range("C8").Select
ActiveSheet.Paste
Range("B8").Select
Application.CutCopyMode = False
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
Selection.Borders(xlEdgeLeft).LineStyle = xlNone
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlThin
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.ColorIndex = 0
.TintAndShade = 0
.Weight = xlMedium
End With
Selection.Borders(xlInsideVertical).LineStyle = xlNone
Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
Range("L12").Select
ActiveSheet.Shapes.AddConnector(msoConnectorElbow, 55.7142519685, _
207.8571653543, 202.5, 227.1428346457).Select
Selection.ShapeRange.Line.EndArrowheadStyle = msoArrowheadOpen
With Selection.ShapeRange.Line
.Visible = msoTrue
.ForeColor.RGB = RGB(0, 0, 0)
.Transparency = 0
End With
Range("F8").Select
End Sub |
APERCU DE BASE
Pièce jointe 195646
APERCU FINAL
Pièce jointe 195645
J'ai cherché sur vraiment pas mal de forum mais malheuresement je n'ai rien trouvé concernant les ranges pour quelles suivent une selection effectué précédement.
Je vous remercie d'avance pour votre aide. J'espère juste que vous avez pu comprend un peu ce que je voulais haha.
PS: J'ai mis le fichier excel en pièce jointe pour que vous puissiez voir la chose plus simplement. ONGLET → Relevé tps cycle OP