Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1292to1296
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Job abfragen in Excel

Job abfragen in Excel
22.01.2013 13:00:27
Mroszynski
Ich habe einen Job-Aufruf in Excel-Basic Ergebnis=shell... Die Abfrage auf Ergebnis klappt nicht. Der Job wird als beendet gemeldet, obwohl er noch läuft.
Das Programm kann gedownloaded werden unter www.mroszynski.de. Es heisst MP3-Update.
Wer weiss Hilfe? Danke

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Job abfragen in Excel
22.01.2013 15:30:06
Anton
Hallo Wolfgang,
wenn ich das richtig verstanden habe, hast du Probleme mit:
ProcessId = Shell("c:\Windows\Temp\MP3Update_Lame.BAT", vbMaximizedFocus)
hProcess = OpenProcess(fdwAccess, False, ProcessId)
Do  '                                             -----> klappt nicht
Sleep 2000
DoEvents
GetExitCodeProcess hProcess, nRet
Loop While nRet = STILL_ACTIVE
MsgBox "Bitte OK, wenn Konvertierung beendet"  '   ----> Notbremse

probier's hiermit:
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "c:\Windows\Temp\MP3Update_Lame.BAT", 1, True
Set WshShell = Nothing

mfg Anton

Anzeige
AW: Job abfragen in Excel
22.01.2013 18:05:48
Mroszynski
Hallo Anton
Die Do-Schleife klappt nicht
mfg Wolfgang

AW: Job abfragen in Excel
22.01.2013 18:38:48
Mroszynski
Ich habe gehört, dass die Abfrage bei Programm-Aufrufen in der BAT-Datei Probleme macht.
Wie wärs mit einer Routine, die die Taskleiste auf CMD.exe abfragt?
Danke. mfg Wolfgang

Job abfragen in Excel
22.01.2013 19:04:11
Anton
Hallo Wolfgang,
IMHO ist das Aufrufen der lame.exe über .bat überflüssig. Ersetze:
  Open "c:\Windows\Temp\MP3Update_Lame.BAT" For Output As 1
For i = 1 To LstDirQ.ListCount - 1
If LstDirQ.Selected(i) Or LstDirQ.Selected(0) Then
Print #1, C34$ + txtDirLame + C34$ + t1$ + t5$ + t2$ + LstDirQ.List(i) + C34$ + t3$ + _
Left(LstDirQ.List(i), Len(LstDirQ.List(i)) - 3) + t4$ + C34$
End If
Next
Close 1
If Dir("c:\Windows\Temp\MP3Update_Lame.BAT") = "" Then MsgBox "Keine Datei ausgewählt": Exit  _
Sub
ProcessId = Shell("c:\Windows\Temp\MP3Update_Lame.BAT", vbMaximizedFocus)
hProcess = OpenProcess(fdwAccess, False, ProcessId)
Do  '                                             -----> klappt nicht
Sleep 2000
DoEvents
GetExitCodeProcess hProcess, nRet
Loop While nRet = STILL_ACTIVE

durch(ungetestet):
  Set WshShell = CreateObject("WScript.Shell")
For i = 1 To LstDirQ.ListCount - 1
If LstDirQ.Selected(i) Or LstDirQ.Selected(0) Then
WshShell.Run C34$ + txtDirLame + C34$ + t1$ + t5$ + t2$ + LstDirQ.List(i) + C34$ + t3$ +  _
_
Left(LstDirQ.List(i), Len(LstDirQ.List(i)) - 3) + t4$ + C34$, 1, True
End If
Next
'MsgBox "Alle Dateien konvertiert"
Set WshShell = Nothing

mfg Anton

Anzeige
AW: Job abfragen in Excel
22.01.2013 19:47:11
Mroszynski
hallo
der RUN läuft asynchron. Ich wollte vermeiden, dass 100 Jobs gleichzeitig gestartet werden. Soviel Dateien werden konvertiert.
mfg Wolfgang

AW: Job abfragen in Excel
22.01.2013 20:07:04
Anton
Hallo Wolfgang,
der RUN läuft asynchron.
wie kommst du darauf?
Hier Auszug aus OH:
Run-Methode
Erstellt einen neuen Prozess, der strBefehl ausführt.
Objekt.Run(strBefehl, [intFensterStil], [bAufRückkehrWarten])
Argumente
Objekt
WshShell-Objekt.
strBefehl
Umgebungsvariablen im Parameter strBefehl werden automatisch erweitert.
intFensterStil
Optional. Setzt den Fensterstil des auszuführenden Programms.
bAufRückkehrWarten
Optional. Wird bAufRückkehrWarten nicht angegeben oder hat dieser Parameter den Wert FALSE, so wird nicht auf die Terminierung des Prozesses gewartet, sondern die Ausführung des Skriptes sofort fortgesetzt.


mfg Anton

Anzeige
AW: Job abfragen in Excel
22.01.2013 20:31:33
Mroszynski
Danke, Anton

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige