Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen

.pptx aus Excel speichern


Betrifft: .pptx aus Excel speichern von: MB12
Geschrieben am: 09.01.2018 15:28:29

Hallo liebe Helfer,

beim Eingang eines neuen Auftrags lege ich per Makro (Ausschnitt siehe unten) einen neuen Projektordner an.
Dann bearbeite (Workbooks.Open) + speichere ich 3 "Vorlage"-Dateien in diesem Ordner.
Jetzt soll eine neue Datei dazukommen, diesmal aber eine Powerpoint-Präsentation, die nicht geöffnet,
sondern nur unter neuem Namen - wiederum in diesen Ordner - gespeichert werden soll.

Quelldatei: "X:\ALS\12_Projekte+VK-Preise\Vorlage_Projektnachbesprechung (APAL + BWCO).pptx"
Neuer Name: Range("A1").Text & " " & Range("B1").Text & " " & "Projektnachbesprechung" & ".pptx"

Bitte nicht wundern, aber ich komme nicht auf die Lösung, Hilfe wäre sehr willkommen :-)

Danke herzlich im Voraus

Gruß, Margarete

Option Explicit

Private Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" ( _
ByVal DirPath As String) As Long

Private Sub CommandButton1_Click()
Dim strPath As String, strFile As String, strPathNew As String, strDir As String

strFile = Range("A1").Text & " " & Range("B1").Text & " " & "Ablaufplan" & ".xlsm"
strPath = "X:\ALS\12_Projekte+VK-Preise\" & Cells(1, 5).Text & "\"
strDir = Range("A1").Text & " " & Range("B1").Text
strPathNew = strPath & strDir & "\"


If CBool(MakeSureDirectoryPathExists(strPathNew)) Then
    ThisWorkbook.SaveAs Filename:=strPathNew & strFile
        Else
    MsgBox "Fehler beim anlegen des Pfades: " & strPath
    End If
End Sub

Private Sub CommandButton2_Click()

Dim owb1 As Workbook
Dim owb2 As Workbook
Dim owb3 As Workbook
Dim lletzte As Long
Dim strPfad As String, strPfadNeu As String, strDir As String, strFile As String
    strPfad = "X:\ALS\12_Projekte+VK-Preise\" & Cells(1, 5).Text & "\"
strDir = Range("A1").Text & " " & Range("B1").Text
strPfadNeu = strPfad & strDir & "\"

       
Set owb1 = ThisWorkbook 'Arbeitsmappe mit diesem Code

'Neue Dateien erzeugen:
Set owb2 = Workbooks.Open("X:\ALS\12_Projekte+VK-Preise\Vorlage Auftragseingangsformular.xlsm")
Set owb3 = Workbooks.Open("X:\ALS\12_Projekte+VK-Preise\Vorlage Maschinenpreise VK_PPMS_2018. _
xlsm")
Set owb4 = Workbooks.Open("X:\ALS\12_Projekte+VK-Preise\Vorlage Ampel für PNB.xlsm")


'+++++++++++++++++++++++++++
'Bearbeitung der Vorlagen
'+++++++++++++++++++++++++++


'Neue Dateien im gleichen Ordner speichern:
strFile = Range("A1").Text & " " & Range("B1").Text & " " & "Auftragseingangsformular" & ".xlsm" _

owb2.SaveAs Filename:=strPfadNeu & strFile
strFile = Range("A1").Text & " " & Range("B1").Text & " " & "Maschinenpreise" & ".xlsm"
owb3.SaveAs Filename:=strPfadNeu & strFile
strFile = Range("A1").Text & " " & Range("B1").Text & " " & "Ampel für PNB" & ".xlsm"
owb4.SaveAs Filename:=strPfadNeu & strFile

End Sub

  

Betrifft: AW: FileCopy von: Fennek
Geschrieben am: 09.01.2018 15:44:34

Hallo Margarete (Maggi),

ohne den Ansatz wirklich vestanden zu haben: kann die Vorlage nicht einfach kopiert werden? Slides werden durch das xl-Makro anscheinend nicht angelegt.

mfg


  

Betrifft: AW: FileCopy von: MB12
Geschrieben am: 09.01.2018 19:37:51

Hallo Fennek,

klar, genau das will ich - war heute der erste Arbeitstag nach 3 Wochen krank. Hirn läuft noch nicht so richtig. Ich glaube, ich habe zwei Aufgaben miteinander verwoben.


Werde mich morgen früh im Büro daran machen, ist doch eigentlich lächerlich.

Trotzdem vielen Dank, manchmal benötigt man einfach nur einen Schubs.

Noch einen schönen Abend

Gruß, Margarete - oder auch Maggi. So haben mich Nachbarskinder vor über 50 Jahren genannt, nachdem sie in der Schule die ersten Englisch-Lessons hatten....


  

Betrifft: AW: FileCopy geht hier leider nicht von: MB12
Geschrieben am: 13.01.2018 20:09:45

Hallo Fennek bzw. alle,

habe inzwischen recherchiert. FileCopy kann ich wohl nicht verwenden, da ich keinen festen Pfad und keinen festen Dateinamen habe.

Mit dem ersten Makro erzeuge und speichere ich einen neuen Ordner und die aktive Excel-Datei.

Mit dem 2. Makro öffne ich 3 Dateien, kopiere verschiedene Werte aus der aktiven Excel-D. in diese Dateien und speichere sie ebenfalls im neuen Ordner.

Nun muss ich noch eine existierende Powerpoint-Datei in diesen Ordner speichern, mit Pfad und Name wie beschrieben.

Und das bekomme ich leider nicht hin.

Bitte nochmal um Hilfe.

Herzlichen Dank, Margarete


  

Betrifft: AW: FileCopy geht hier leider nicht von: ChrisL
Geschrieben am: 15.01.2018 10:02:55

Hi Margarete

Vielleicht so...

strQuelle = "X:\ALS\12_Projekte+VK-Preise\Vorlage_Projektnachbesprechung (APAL + BWCO).pptx"

strFile = Range("A1").Text & " " & Range("B1").Text & " " & "Projektnachbesprechung" & ".pptx"
strPath = "X:\ALS\12_Projekte+VK-Preise\" & Cells(1, 5).Text & "\"
strDir = Range("A1").Text & " " & Range("B1").Text
strZiel = strPath & strDir & "\" & strFile

FileCopy strQuelle, strZiel

cu
Chris


  

Betrifft: AW: FileCopy geht hier leider nicht von: MB12
Geschrieben am: 15.01.2018 16:09:36

Hallo Chris,

danke schön; werde ich gleich morgen ausprobieren, bin heute unterwegs.

Gruß, Margarete


Beiträge aus dem Excel-Forum zum Thema ".pptx aus Excel speichern"