mit excel makro batch datei in jeweiligen ordner kopieren ausführen und wieder löschen?
Ist das mit einer makro machbar über excel das mann sagt er solle den pfad aus excel kopieren in dem die excel tabelle im jeweiligen ordner drinne ist. die batch datei aus einem anderen pfad dort rein zu kopieren und sie auszuführen und das die batch datei wieder löscht. bitte um schnelle antwort :D
1 Antwort
Von gutefrage auf Grund seines Wissens auf einem Fachgebiet ausgezeichneter Nutzer
Microsoft Excel
Hallo,
kopieren und wieder löschen ist auf jeden Fall möglich. Ich habe allerdings keine Ahnung wie Batchdateien funktionieren und daher auch nicht wie man sie per VBA ausführen würde. Im folgenden Code versucht es sie wie eine normale Textdatei zu öffnen:
Sub Batchcopy()
Dim objBatch As Object
Dim Bname As String, Bpfad As String
Dim Auspfad As String, ZPfad As String
Bpfad = ActiveSheet.Range("C1").Value 'Pfad der Ursprungsbatchdatei
Bname = ActiveSheet.Range("C2").Value 'Name der Ursprungsbatchdatei
Auspfad = Bpfad & "\" & Bname
ZPfad = ActiveWorkbook.Path & "\" & Bname
'Batch in Ordner der geöffneten Exceldatei kopieren
FileCopy Auspfad, ZPfad 'falls das fehlschlägt weil die Originaldatei geöffnet ist, kannst du die andere Variante ausprobieren:
'Set objBatch = CreateObject("Scripting.FileSystemObject")
'objBatch.CopyFile Auspfad, Hpfad
'Batch ausführen? (Datei öffnen)
ActiveWorkbook.FollowHyperlink ZPfad
'2 Sekunden warten, dann Batchdatei aus Ordner der geöffneten Exceldatei löschen
If Application.Wait(Now + TimeValue("0:00:02")) Then
Kill Hpfad
End If
End Sub