Sub saveExcel()
Dim fichier As String
On Error Resume Next
ChDir "Y:\Pré-op\SOPP et relais\Relais\Situation Relais Sans Macro\sortie\Excel"
If Err Then MkDir "Y:\Pré-op\SOPP et relais\Relais\Situation Relais Sans Macro\sortie\Excel" 'pour le créer
On Error GoTo 0
Application.DisplayAlerts = False
[A1] = Now
Workbooks.Open Filename:="Y:\Pré-op\SOPP et relais\Relais\Situation Relais Sans Macro\SITUATION RELAIS BIS.xlsm"
ActiveSheet.Copy
fichier = "Y:\Pré-op\SOPP et relais\Relais\Situation Relais Sans Macro\sortie\Excel\" & Format(Date, "ddmmyyyy") & "_" & "Situation Relais" & ".xlsx"
ActiveWorkbook.SaveAs fichier 'enregitrer les mises à jour sur ce fichier esporté
ActiveWorkbook.Close SaveChanges:=False
Call import
Workbooks("SITUATION RELAIS BIS.XLSM").Close SaveChanges:=False 'fermer le fichier situation relais bis
Application.DisplayAlerts = True
End Sub
Private Sub import()
'ce programme sert a ouvrir le powerpoint cartes support relais et mettre a jour les slide c'est a dire les commentaire ainsi ETAT des relais.
Dim PptApp As PowerPoint.Application
'Dim PptDoc As PowerPoint.Presentation
Dim sld As PowerPoint.Slide
Dim Shp As PowerPoint.Shape
'Dim Cs1 As ColorScheme
'Dim NbShpe As Integer
Set PptApp = CreateObject("Powerpoint.Application")
Dim FichierPpt, pwpt, presppt
Set pwpt = CreateObject("PowerPoint.Application")
pwpt.Visible = True '
Set presppt = PptApp.Presentations.Open(Filename:="Y:\Pré-op\SOPP et relais\Relais\Situation Relais Sans Macro\cartes support relais.pptm")
pwpt.Visible = True
pwpt.ActivePresentation.UpdateLinks
With presppt
'--- Ajoute un Slide
' .Slides.Add Index:=1, Layout:=ppLayoutBlank
'Crée une zone de texte (AddLabel)
' affectation à l'objet slide la première diapositive de la présentation en cours.
' création de la zone de texte
Set Shp = .Slides(2).Shapes.AddTextbox(msoTextOrientationHorizontal, 70, 320, 600, 50)
'insère la valeur de la Cellule E3 dans une zone de texte
If Range("E3") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E3")
'Modifie la couleur du texte
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
'Compte le nombre de shapes dans la diapositive:
'le dernier objet inséré correspond à l'index le plus élevé
'NbShpe = sld.Shapes.Count
'--------com1-SOMAIN
Set Shp = .Slides(2).Shapes.AddTextbox(msoTextOrientationHorizontal, 300, 240, 350, 50)
If Range("E53") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E53")
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
'--------com2
Set Shp = .Slides(2).Shapes.AddTextbox(msoTextOrientationHorizontal, 300, 220, 350, 50)
If Range("E52") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E52")
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
'--------com3
Set Shp = .Slides(2).Shapes.AddTextbox(msoTextOrientationHorizontal, 300, 200, 350, 50)
If Range("E51") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E51")
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
'--------com4
Set Shp = .Slides(2).Shapes.AddTextbox(msoTextOrientationHorizontal, 300, 180, 350, 50)
If Range("E50") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E50")
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
'--------com5
Set Shp = .Slides(2).Shapes.AddTextbox(msoTextOrientationHorizontal, 300, 160, 350, 50)
If Range("E49") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E49")
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
'--------com6
Set Shp = .Slides(2).Shapes.AddTextbox(msoTextOrientationHorizontal, 300, 140, 350, 50)
If Range("E48") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E48")
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
End With
'-------------------------------------------------------------------------------------------
With presppt
Set Shp = .Slides(3).Shapes.AddTextbox(msoTextOrientationHorizontal, 70, 320, 600, 50)
'insère la valeur de la Cellule E4 dans une zone de texte
If Range("E4") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E4")
'Modifie la couleur du texte
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
'-------------Com1-CULMONT CHALANDRY
Set Shp = .Slides(3).Shapes.AddTextbox(msoTextOrientationHorizontal, 300, 240, 350, 50)
If Range("E61") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E61")
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
'--------com2
Set Shp = .Slides(3).Shapes.AddTextbox(msoTextOrientationHorizontal, 300, 220, 350, 50)
If Range("E60") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E60")
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
'--------com3
Set Shp = .Slides(3).Shapes.AddTextbox(msoTextOrientationHorizontal, 300, 200, 350, 50)
If Range("E59") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E59")
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
'--------com4
Set Shp = .Slides(3).Shapes.AddTextbox(msoTextOrientationHorizontal, 300, 180, 350, 50)
If Range("E58") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E58")
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
'--------com5
Set Shp = .Slides(3).Shapes.AddTextbox(msoTextOrientationHorizontal, 300, 160, 350, 50)
If Range("E57") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E57")
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
'--------com6
Set Shp = .Slides(3).Shapes.AddTextbox(msoTextOrientationHorizontal, 300, 140, 350, 50)
If Range("E56") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E56")
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
End With
With presppt
' création de la zone de texte
Set Shp = .Slides(4).Shapes.AddTextbox(msoTextOrientationHorizontal, 70, 320, 600, 50)
'insère la valeur de la Cellule E5 dans une zone de texte
If Range("E5") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E5")
'Modifie la couleur du texte
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
'------------com1-HAUSBERGEN
Set Shp = .Slides(4).Shapes.AddTextbox(msoTextOrientationHorizontal, 300, 240, 350, 50)
If Range("E69") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E69")
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
'--------com2
Set Shp = .Slides(4).Shapes.AddTextbox(msoTextOrientationHorizontal, 300, 220, 350, 50)
If Range("E68") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E68")
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
'--------com3
Set Shp = .Slides(4).Shapes.AddTextbox(msoTextOrientationHorizontal, 300, 200, 350, 50)
If Range("E67") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E67")
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
'--------com4
Set Shp = .Slides(4).Shapes.AddTextbox(msoTextOrientationHorizontal, 300, 180, 350, 50)
If Range("E66") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E66")
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
'--------com5
Set Shp = .Slides(4).Shapes.AddTextbox(msoTextOrientationHorizontal, 300, 160, 350, 50)
If Range("E65") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E65")
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
'--------com6
Set Shp = .Slides(4).Shapes.AddTextbox(msoTextOrientationHorizontal, 300, 140, 350, 50)
If Range("E64") <> 0 Then Shp.TextFrame.TextRange.Text = Range("E64")
Shp.TextFrame.TextRange.Font.Color = RGB(3, 34, 76)
End With
presppt.ExportAsFixedFormat presppt.Path & "\sortie\carte\" & Format(Date, "ddmmyyyy") & "_" & "Situation Relais" & ".pdf", ppFixedFormatTypePDF, ppFixedFormatIntentPrint
End Sub