Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
1172to1176
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

cmd Befehl ändern

cmd Befehl ändern
Stan
Hallo Excel Freunde,
Wir drucken auf verschiedenen Drucker label. Ich hätte gern die Drucker über eine Excel tabelle getestet.
Per Button starte makro

Sub Test()
Dim Hilf As Variant
Hilf = Shell("d:\0000\test.bat", vbMaximizedFocus)
End Sub

Die Test.bat Datei: copy E:\1111\Tassimo\TAS4011.txt \\ginwps21\gind8165_pcl
Es muss immer Drucker Nummer geändert werden. Am besten wenn das Makro fragt ab die Drucker Nummer und dann trägt die Nummer am Ende der Batchdatei ein.
danke für Hilfe Stan

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: cmd Befehl ändern
28.08.2010 18:28:16
Oberschlumpf
Hi Stan
Versuch mal (ungetestet)
Erweitere die Zeile in der txt-Datei so:
copy E:\1111\Tassimo\TAS4011.txt \\ginwps21\gind8165_pcl %1
ändere deinen Code so:
Sub Test()
Dim Hilf As Variant, liNummer As Integer
liNummer = InputBox("Druckernummer eintragen", "Abfrage der Druckernummer")
Hilf = Shell("d:\0000\test.bat " & liNummer, vbMaximizedFocus)
End Sub
Beachte das Leerzeichen hinter ...test.bat!
Mit %1 in der txt-Datei erwartet die Datei einen Parameter.
Und mit InputBox übergibst du den Parameter.
Dieser Code ist aber ohne Fehlerkontrolle.
D. h., wenn in der Inputbox gar nichts, keine Zahl oder eben Text eingetragen wird, kann es zu Fehlern kommen.
Hilft es denn?
Ciao
Thorsten
Anzeige
AW: cmd Befehl ändern
28.08.2010 19:32:56
Stan
Danke für deinen Tipp.
Nach der Eingabe in InputBox kommt leider Fehler.
Gruß Stan
AW: cmd Befehl ändern
28.08.2010 19:39:15
Oberschlumpf
Tja, dann weiß ich leider auch nicht weiter.
Vllt wäre es hilfreich, wenn du uns verrätst...
...wann genau kommt der Fehler?
...direkt hinter der Inputbox (ist also die Inpbox schon fehlerhaft, oder erst nach der nächsten Zeile)?
...um welchen Fehler handelt es sich (nicht nur Err-Nr. sondern auch Fehlertext)?
Ciao
Thorsten
noch ne Frage
28.08.2010 19:43:36
Oberschlumpf
wie genau MUSS denn der Befehl lauten, um den Drucker mit der richtigen Nummer aufzurufen?
AW: noch ne Frage
28.08.2010 19:56:23
Stan
Hallo,
Der Befehl muss nur immer einen anderen Drucker wählen z.B. \\ginwps21\gind8165_pcl oder \\ginwps21\gind8133_pcl usw.
Der Fehler kommt nach der eingabe in der InputBox. markiert wird die Zeile mit liNummer = InputBox("Druckernummer eintragen", "Abfrage der Druckernummer")
gruß Stan
Anzeige
AW: noch ne Frage
28.08.2010 20:10:10
Oberschlumpf
a) hast du nicht gelesen, dass wir auch den Text der Fehlermeldung benötigen?
ich hab meinen Code nun doch mal getestet. Und die Inputbox - also eben nach Eingabe einer beliebigen Zahl - bereitet in meinem Code keine Probleme
b) welche Nummer genau muss in die txt-Datei übertragen werden?
deine ersten Wörter:
Es muss immer Drucker Nummer geändert werden. Am besten wenn das Makro fragt ab die Drucker Nummer und dann trägt die Nummer am Ende der Batchdatei ein.
Daraus lese ich, dass die Zeile in der txt-Datei oder der Befehl z Bsp so aussehen muss:
\\ginwps21\gind8165_pcl 555
Die Zahl 555 wäre jetzt die Nummer die mit der Inputbox ans Ende der txt-Datei übergeben wird.
Aber nun vermute ich, dass die Zahl 8165 geändert werden muss.
Diese Zahl befindet sich aber nicht am Ende der Textdatei!
Was genau möchtest du nun also erreichen?
Ciao
Thorsten
ach ja...ne Begrüßung am Anfang aller! deiner Beiträge wäre auch nett
Anzeige
AW: noch ne Frage
28.08.2010 20:19:38
Stan
Danke, jetzt habe ich verstanden,
Ich lasse in der Batch Datei copy D:\0000\TAS4012.txt \\ginwps21\gind und dazu muss eine 4-stelige nummer , die ändert sich und dann unterstrich PCL "_PCL". Die Drucker Bezeichnung ist immer 5555_pcl.
Was kann ich mit _pcl machen?
Wenn ich trage nur Zahl kommt keine Fehlermeldung, aber Batchdatei startet trotzdem nicht.
Gruß Stan.
letzter Versuch
28.08.2010 20:28:10
Oberschlumpf
Ändere die Zeile in der txt-Datei genau so:
copy E:\1111\Tassimo\TAS4011.txt \\ginwps21\gind%1
ändere deinen Code so:
Sub Test()
Dim Hilf As Variant, lstrNummer As String
lstrNummer = InputBox("Druckernummer eintragen", "Abfrage der Druckernummer")
Hilf = Shell("d:\0000\test.bat " & liNummer, vbMaximizedFocus)
End Sub
Wenn du jetzt den Code startest und z Bsp 1234_pcl in die Inputbox einträgst, dann müsste die vollständige Befehlszeile in der txt-Datei
copy E:\1111\Tassimo\TAS4011.txt \\ginwps21\gind1234_pcl
lauten.
Wenn auch das nix hilft, dann hab ich echt keine Idee mehr.
Hilfts denn?
Anzeige
AW: noch ne Frage
28.08.2010 20:12:17
Stan
Wenn ich ändere den liNummer As Variant kommt keine Fehlermeldung, aber die Batch Datei startet nicht.
Was darf ich eintippen? Normalerweise musste es die Druckernummer sein "gind8133_pcl "
Gruß
ich bin raus
28.08.2010 20:21:13
Oberschlumpf
bei dem Ausdruck: gind8133_pcl
handelt es sich nicht um eine Nummer, sondern um einen Text.
Sorry, aber du beschreibst deine Frage/dein Excel-Problem sehr sehr ungenau.
Denk immer daran, dass nur du vor deinem PC sitzt, dass nur du genau weißt, was genau passiert - so lange du uns nicht ganz genau erzählst, was passiert/wie es aussieht.
Ich mag jedenfalls nicht mehr. Bis jetzt hat es den Anschein, dass ich zu oft nachfragen müsste, bis du mir auch genau das schreibst, was ich wissen möchte.
Die Fehlermeldung hast du noch immer nicht verraten.
Wünsche dir noch weiter viel Erfolg.
Anzeige
AW: ich bin raus
28.08.2010 21:15:28
Stan
Hallo,
Danke für deine Hilfe. Die Datei startet jetzt. Ich muss noch was mit den nummer machen.
Gruß Stan
AW: Optimiert Batch-Dateiaufruf mit Fehlerprüfung
29.08.2010 09:42:33
fcs
Hallo Stan,
den Namen des Druckers muss man in Excel-VBA aus den konstanten und Variablen Teilen zusammenfügen.
Außerdem kann man die Eingabe noch prüfen, ob sie das richtige Format hat. Die Prüfung der Läng der Druckernummer ggf. weglassen.
Gruß
Franz
'Batchdatei angepasst:
copy E:\1111\Tassimo\TAS4011.txt \\ginwps21\%1
Sub Test()
Dim Hilf As Variant, strNummer As String, sProg As String
On Error GoTo Fehler
Eingabe:
strNummer = InputBox("Druckernummer eintragen", "Abfrage der Druckernummer", _
strNummer)
If strNummer = "" Then Exit Sub 'Abbrechen in Inputbox gewählt
If Len(strNummer)  4 Then 'Länge der Nummer prüfen
MsgBox "Die Zahl muss 4 Ziffern haben!", vbOKOnly + vbInformation, _
"Label Drucker Testen"
GoTo Eingabe:
End If
If IsNumeric(strNummer) Then
strNummer = "gind" & strNummer & "_pcl"
sProg = "d:\0000\test.bat " 'Verzeichnis + Name der Datei
Hilf = Shell(sProg & strNummer, vbMaximizedFocus)
Else
MsgBox "Es wurd keine Zahl eingegeben!", vbOKOnly + vbInformation, _
"Label Drucker Testen"
GoTo Eingabe:
End If
Err.Clear
Fehler:
'Fehlerbehandlung
With Err
Select Case .Number
Case 0 'kein Fehler
Case 76
MsgBox "Fehler-Nr.: " & .Number & vbLf & .Description & vbLf & vbLf _
& "Bitte Verzeichnis prüfen: " & vbLf & sProg
Case Else
MsgBox "Fehler-Nr.: " & .Number & vbLf & .Description
End Select
End With
End Sub

Anzeige
AW: Optimiert Batch-Dateiaufruf mit Fehlerprüfung
29.08.2010 16:51:49
Stan
Ich danke Dir Franz,
Es funktioniert super,
Gruß Stan

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige