Bonjour,
Voila, dans le cadre de mon emploi, je dois créer une macro excel afin que le fichier créer soit envoyé via outlook, ma macro est a moitié créée il me reste a trouver les bon codes pour envoyer mon fichier.
Pouvez vous m'aider?
Voici le début de ma macro ( à compléter par les codes d'envoi de fichier par mail):
Je vous en remercie par avance.
Sub encours()
'
' encours Macro
'
' Touche de raccourci du clavier: Ctrl+k
'
Application.CutCopyMode = False
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Feuil3!R1C1:R65536C41", Version:=xlPivotTableVersion10).CreatePivotTable _
TableDestination:="Feuil2!R1C1", TableName:="Tableau croisé dynamique5", _
DefaultVersion:=xlPivotTableVersion10
Sheets("Feuil2").Select
Cells(1, 1).Select
With ActiveSheet.PivotTables("Tableau croisé dynamique5").PivotFields( _
"opération")
.Orientation = xlRowField
.Position = 1
End With
Range("A5").Select
ActiveSheet.PivotTables("Tableau croisé dynamique5").PivotFields("opération"). _
PivotItems("Approche route").Position = 1
ActiveSheet.PivotTables("Tableau croisé dynamique5").AddDataField ActiveSheet. _
PivotTables("Tableau croisé dynamique5").PivotFields("vin"), "Nombre de vin", _
xlCount
With ActiveSheet.PivotTables("Tableau croisé dynamique5").PivotFields( _
"ptf_depart_libelle")
.Orientation = xlRowField
.Position = 2
End With
With ActiveSheet.PivotTables("Tableau croisé dynamique5").PivotFields( _
"ptf_arrivee_libelle")
.Orientation = xlRowField
.Position = 2
End With
Range("C2").Select
With ActiveSheet.PivotTables("Tableau croisé dynamique5").PivotFields( _
"ptf_depart_libelle")
.Orientation = xlRowField
.Position = 2
End With
Range("B8").Select
ActiveSheet.PivotTables("Tableau croisé dynamique5").PivotFields( _
"ptf_depart_libelle").Subtotals = Array(False, False, False, False, False, False, _
False, False, False, False, False, False)
With ActiveSheet.PivotTables("Tableau croisé dynamique5").PivotFields( _
"nb_jour_expediable_plage")
.Orientation = xlColumnField
.Position = 1
End With
ActiveWorkbook.ShowPivotTableFieldList = False
Columns("D").EntireColumn.AutoFit
Columns("E:E").EntireColumn.AutoFit
Columns("F:F").EntireColumn.AutoFit
Columns("G:G").EntireColumn.AutoFit
Columns("H:H").EntireColumn.AutoFit
Columns("I:I").EntireColumn.AutoFit
Columns("J:J").EntireColumn.AutoFit
Columns("K:K").EntireColumn.AutoFit
Columns("L:L").EntireColumn.AutoFit
With ActiveSheet.PivotTables("Tableau croisé dynamique5").PivotFields( _
"nb_jour_expediable_plage")
.PivotItems("(blank)").Visible = False
End With
Columns("D").EntireColumn.AutoFit
Columns("E:E").EntireColumn.AutoFit
Columns("F:F").EntireColumn.AutoFit
Columns("G:G").EntireColumn.AutoFit
Columns("H:H").ColumnWidth = 26.71
Columns("H:H").EntireColumn.AutoFit
Columns("I:I").EntireColumn.AutoFit
Columns("J:J").EntireColumn.AutoFit
Columns("K:K").EntireColumn.AutoFit
Columns("L:L").EntireColumn.AutoFit
Columns("M:M").EntireColumn.AutoFit
Range("D2:L2").Select
Selection.FormatConditions.AddColorScale ColorScaleType:=3
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
Selection.FormatConditions(1).ColorScaleCriteria(1).Type = _
xlConditionValueLowestValue
With Selection.FormatConditions(1).ColorScaleCriteria(1).FormatColor
.Color = 8109667
.TintAndShade = 0
End With
Selection.FormatConditions(1).ColorScaleCriteria(2).Type = _
xlConditionValuePercentile
Selection.FormatConditions(1).ColorScaleCriteria(2).Value = 50
With Selection.FormatConditions(1).ColorScaleCriteria(2).FormatColor
.Color = 8711167
.TintAndShade = 0
End With
Selection.FormatConditions(1).ColorScaleCriteria(3).Type = _
xlConditionValueHighestValue
With Selection.FormatConditions(1).ColorScaleCriteria(3).FormatColor
.Color = 7039480
.TintAndShade = 0
End With
Range("L2").Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
Columns("A:A").EntireColumn.AutoFit
End Sub
Voila, dans le cadre de mon emploi, je dois créer une macro excel afin que le fichier créer soit envoyé via outlook, ma macro est a moitié créée il me reste a trouver les bon codes pour envoyer mon fichier.
Pouvez vous m'aider?
Voici le début de ma macro ( à compléter par les codes d'envoi de fichier par mail):
Je vous en remercie par avance.
Sub encours()
'
' encours Macro
'
' Touche de raccourci du clavier: Ctrl+k
'
Application.CutCopyMode = False
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Feuil3!R1C1:R65536C41", Version:=xlPivotTableVersion10).CreatePivotTable _
TableDestination:="Feuil2!R1C1", TableName:="Tableau croisé dynamique5", _
DefaultVersion:=xlPivotTableVersion10
Sheets("Feuil2").Select
Cells(1, 1).Select
With ActiveSheet.PivotTables("Tableau croisé dynamique5").PivotFields( _
"opération")
.Orientation = xlRowField
.Position = 1
End With
Range("A5").Select
ActiveSheet.PivotTables("Tableau croisé dynamique5").PivotFields("opération"). _
PivotItems("Approche route").Position = 1
ActiveSheet.PivotTables("Tableau croisé dynamique5").AddDataField ActiveSheet. _
PivotTables("Tableau croisé dynamique5").PivotFields("vin"), "Nombre de vin", _
xlCount
With ActiveSheet.PivotTables("Tableau croisé dynamique5").PivotFields( _
"ptf_depart_libelle")
.Orientation = xlRowField
.Position = 2
End With
With ActiveSheet.PivotTables("Tableau croisé dynamique5").PivotFields( _
"ptf_arrivee_libelle")
.Orientation = xlRowField
.Position = 2
End With
Range("C2").Select
With ActiveSheet.PivotTables("Tableau croisé dynamique5").PivotFields( _
"ptf_depart_libelle")
.Orientation = xlRowField
.Position = 2
End With
Range("B8").Select
ActiveSheet.PivotTables("Tableau croisé dynamique5").PivotFields( _
"ptf_depart_libelle").Subtotals = Array(False, False, False, False, False, False, _
False, False, False, False, False, False)
With ActiveSheet.PivotTables("Tableau croisé dynamique5").PivotFields( _
"nb_jour_expediable_plage")
.Orientation = xlColumnField
.Position = 1
End With
ActiveWorkbook.ShowPivotTableFieldList = False
Columns("D").EntireColumn.AutoFit
Columns("E:E").EntireColumn.AutoFit
Columns("F:F").EntireColumn.AutoFit
Columns("G:G").EntireColumn.AutoFit
Columns("H:H").EntireColumn.AutoFit
Columns("I:I").EntireColumn.AutoFit
Columns("J:J").EntireColumn.AutoFit
Columns("K:K").EntireColumn.AutoFit
Columns("L:L").EntireColumn.AutoFit
With ActiveSheet.PivotTables("Tableau croisé dynamique5").PivotFields( _
"nb_jour_expediable_plage")
.PivotItems("(blank)").Visible = False
End With
Columns("D").EntireColumn.AutoFit
Columns("E:E").EntireColumn.AutoFit
Columns("F:F").EntireColumn.AutoFit
Columns("G:G").EntireColumn.AutoFit
Columns("H:H").ColumnWidth = 26.71
Columns("H:H").EntireColumn.AutoFit
Columns("I:I").EntireColumn.AutoFit
Columns("J:J").EntireColumn.AutoFit
Columns("K:K").EntireColumn.AutoFit
Columns("L:L").EntireColumn.AutoFit
Columns("M:M").EntireColumn.AutoFit
Range("D2:L2").Select
Selection.FormatConditions.AddColorScale ColorScaleType:=3
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
Selection.FormatConditions(1).ColorScaleCriteria(1).Type = _
xlConditionValueLowestValue
With Selection.FormatConditions(1).ColorScaleCriteria(1).FormatColor
.Color = 8109667
.TintAndShade = 0
End With
Selection.FormatConditions(1).ColorScaleCriteria(2).Type = _
xlConditionValuePercentile
Selection.FormatConditions(1).ColorScaleCriteria(2).Value = 50
With Selection.FormatConditions(1).ColorScaleCriteria(2).FormatColor
.Color = 8711167
.TintAndShade = 0
End With
Selection.FormatConditions(1).ColorScaleCriteria(3).Type = _
xlConditionValueHighestValue
With Selection.FormatConditions(1).ColorScaleCriteria(3).FormatColor
.Color = 7039480
.TintAndShade = 0
End With
Range("L2").Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
.PatternTintAndShade = 0
End With
Columns("A:A").EntireColumn.AutoFit
End Sub