ich möchte mit Excel VBA eine Editor-/ Notepad-Datei also .txt Datei öffnen und diese an einen vorher bereits definierten Drucker automatisch ausdrucken lassen.
Der Inhalt der Text-Datei wird bereits in meinem Ablauf vorgeschrieben und dann gespeichert. Würde am liebsten die Datei direkt nachdem ich sie geschrieben habe drucken, aber das funktioniert was ich so recherschiert habe leider nicht. Meine Excel/ VBA-Kenntnisse sind bescheiden. Habe im Internet bereits mehrfach gelesen das man es mit dem Shell-Befehl machen kann, nur habe ich keine Ahnung wie ich das umsetze. Als Anmerkung noch, der Name der jeweiligen Textdatei ändert sich und wird in die Variable strDateiname geschrieben.
Bisheriger Code sieht wie folgt aus:
Function Txt_datei(x As Integer)
Dim sht As Worksheet
Set sht = ThisWorkbook.Worksheets("Tabelle1")
'Speicherpfad der Txt-Datei
strPath = "C:...Pfad"
'Dateiname = Name .txt
strDateiname = sht.Range("G" & x) & ".txt"
'Code wird in Txt-Datei geschrieben
Open strPath & strDateiname For Output As #x
Print #x, "^XA" _
& vbCrLf & "^CFP,12" _
& vbCrLf & "^FO65,20^FD---^FS" _
& vbCrLf & "^FO85,40^FD " & sht.Range("G" & x) & " ^FS" _
& vbCrLf & "^FO7^BQN,2,2^FDQA," & "ANR " & sht.Range("C" & x) & " D " & sht.Range("D" & x) & " SN " & sht.Range("G" & x) & " ^FS" _
& vbCrLf & "^XZ"
Close #x
End Function
Habe bereits das hier probiert: Dim RetVal
strPath = "C:...81910-21002.txt"
RetVal = Shell("C:\WINDOWS\NOTEPAD.EXE" & strPath, 1)
aber er findet hier schon die Datei nicht diese ich öffnen möchte, obwohl die Schreibweise beachtet wurde und auch richtig geschrieben ist. Wenn ich nur das Notepad mir öffnen lasse funktioniert es.
Wäre schön wenn mir jemand helfen könnte :)
Vielen Dank