schade thread vergessen...oder ??

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: schade thread vergessen...oder ??
von: roland_k
Geschrieben am: 25.02.2005 08:00:10
hi guten morgen
habe nen beitrag noch offen:
http://xlarchiv.herber.de/572to576.htm
hier wird zwar div code angeboten aber ich komme da nicht klar
einfach zu sagen es geht ??
nimm diesen code ....???
sorry so komme nicht weiter ....
ich will eine tabelle per vba drucken ...zeilenweise
dh ...die tabelle hat 1 - 48 zeilen
1-5 sind immer gleich ausgefuellt...
von 6 -48 werden eingaben gemacht ....
nun soll:
bei der eingabe von zeile 6 .....diverse spalten werden gefuellt...der drucker veranlasst werden bis zeile 6 einschliesslich drucken
also ich denk mir ...sobald ich zeile 6 verlasse
oder in zeile 7 eingabe mache ....
dann soll er zeile 7 drucken wenn diese verlasse
dh heisst ich gehe in zeile 8 sobald in der zeile ne eingabe erfolgt soll der drucker zeile 7 drucken
ich benoetige den weg ....wie ich den drucker veralassen kann zu stoppen und auf eingaben warten

sorry wenn ich das neu poste aber ich weiss nicht ob das bisherige thread noch aktualisiert wird
danke wenn mir jemand den loesungsweg hat
oder eben eine link wo sowas schon behandelt ist
danke im voraus
gruss roland_k

Bild

Betrifft: AW: schade thread vergessen...oder ??
von: Harald E
Geschrieben am: 25.02.2005 08:50:19
Moin Roland,
wenn es ein Laserdrucker ist, kannste eigentlich die Finger davon lassen (Aufwärmphase zeilenweise ?).
Der Sinn einer solchen Prozedur erschließt sich mir nicht, zumal es sich auch nicht um Endlospapier handelt und man erst Nutzen aus einem Ausdruck zieht, wenn er aus dem Drucker raus ist.....aber das nur so am Rande ;-)
Da dies keine excel-spezifische Geschichte ist, würde ich empfehlen den Hersteller des Druckers zu kontaktieren.
Sollte es einen Weg geben, deinen Drucker so zu knechten, werden die das wissen.
Gruß
Harald
Bild

Betrifft: AW: schade thread vergessen...oder ??
von: roland_k
Geschrieben am: 25.02.2005 09:32:45
hi harald
der nutzen ist dass ich das auf papier habe ....wenn stromausfall z b ...

danke
Bild

Betrifft: AW: schade thread vergessen...oder ??
von: Harald E
Geschrieben am: 25.02.2005 09:43:48
Hi Roland,
na ok.
Vielleicht könntest Du das aber auch mit einem Excel Add-Ins (autosave.xla über den Add-Ins Manager) abfangen.
Der speichert wenn Du willst im Minutentakt.
Gruß und noch viel Erfolg
Harald
Bild

Betrifft: toll....ich denke mir was
von: roland_k
Geschrieben am: 25.02.2005 18:45:33
hallo harald,,,
ich will z b bei ner versteigerung gewisse daten mitprotokollieren
stromausfall....oder laptop mit akku,,,
hallo herr versteigerer ich bitte um unterbrechung ...mein system....koennen wir alles wiederholen ...??
oder z b schachmeisterschafr ,,,,,spielzuege protokollieren ...usw ,,,
dann will das bis dahin auf papier haben und von hand weiterfuehren
gespeichert wird eh automatisch ...nach gewissen kriterien
soweit ...die erklärung
auf fragen erwarte allerdings konkretes zum problem nicht globalbehandlung
schade um die zeit
trotzdem viel spass

gruss roland_k
Bild

Betrifft: Zeilenänderung am Drucker ausgeben
von: Reinhard
Geschrieben am: 25.02.2005 10:22:08
Hi Roland,
in diese Arbeitsmappe:
Private Sub Workbook_Open()
Worksheets("Tabelle2").Activate
End Sub
in Tabelle1:
Option Base 1
Dim Ber1_5 As Boolean
Dim Dateinummer As Integer
Dim zei As Long
Private Sub Worksheet_Activate()
If Ber1_5 = False Then
    Dim länge(5) As Integer
    For n = 1 To 5
        länge(n) = Cells(n, 256).End(xlToLeft).Column
        'MsgBox länge(n)
    Next n
    Dateinummer = FreeFile
    Open "LPT1" For Output As #Dateinummer
    sp = Application.WorksheetFunction.Max(länge)
    For z = 1 To 5
        Print #Dateinummer, z & ": ";
        For s = 1 To sp
            Print #Dateinummer, Cells(z, s) & "  ";
            'Print #Dateinummer, Tab((s - 1) * 6 + 1); Cells(z, s);
        Next s
        Print #Dateinummer, vbLf
    Next z
    Close #Dateinummer
    Application.EnableEvents = False
    Range("A6").Select
    Application.EnableEvents = True
    zei = 6
    Range(Cells(zei, 1), Cells(zei, 256)).Copy Destination:=Worksheets("Tabelle3").Range("A1:IV2")
    For n = 1 To 256
        Worksheets("Tabelle3").Cells(3, n).FormulaR1C1 = "=if(r1c" & n & "=r2c" & n & ",0,1)"
    Next n
    Application.MoveAfterReturnDirection = xlToRight
    Ber1_5 = True
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Range(Cells(zei, 1), Cells(zei, 256)).Copy Destination:=Worksheets("Tabelle3").Range("A2:iv2")
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Row = zei Then Exit Sub
If Application.WorksheetFunction.Sum(Worksheets("Tabelle3").Range("A3:IV3")) > 0 Then
    Dateinummer = FreeFile
    'CON, AUX, COM1, COM2, COM3, COM4, LPT1, LPT2, LPT3, PRN und NUL
    Open "LPT1" For Output As #Dateinummer
    Print #Dateinummer, zei & ": ";
    sp = Worksheets("Tabelle3").Range("IV2").End(xlToLeft).Column
        For s = 1 To sp
    Print #Dateinummer, Cells(zei, s) & "  ";
    Next s
    Print #Dateinummer, vbLf
    Close #Dateinummer
End If
zei = Target.Row
Range(Cells(zei, 1), Cells(zei, 256)).Copy Destination:=Worksheets("Tabelle3").Range("A1:IV2")
End Sub
Sub reset()
Ber1_5 = False
Close
Application.EnableEvents = True
End Sub

Getestet auf Canon BJC 220
Gruß
Reinhard
Bild

Betrifft: AW: Zeilenänderung am Drucker ausgeben
von: roland_k
Geschrieben am: 25.02.2005 10:54:10
hi reinhard
habe kein dunst ?? muss erst aber probieren
weiss nor nicht wie das steuert
hast di die test mappe dass ehn kann wie das geht ??
danke
gruss roland _k
Bild

Betrifft: AW: Zeilenänderung am Drucker ausgeben
von: Reinhard
Geschrieben am: 25.02.2005 11:13:26
Hi Roland, du brauchst da keine Testdatei von mir.
lege dir eine neue Datei an, sie muss die das Tabellenblatt "Tabelle3" enthalten.
Wie das Blatt wo der Code drinstehe ist egal.
Activate löst keine Ereinis aus wenn es von Workbook_open aufgerufen wird, also wird beim Staren Tabelle2 aktiviert, du musst dann auf Tabelle1 wechseln und diesmal wird das Eregnis ausgelöst und die Eriegniscodes beginnen zu arbeiten.
Auf Blatt3 steht in Zeile 1 wie die Zeile in Tbaelle 1 aussah als du sie betreten hast und in Zeiel 2 wie sie bem Verlassen aussieht.
In Zeile 3 von blatt3 steht eine 1 wennnn was verändert wurde, dann wird die geänderte zeile in Tabelle1 ausgedruckt.
Gruß
Reinhard

Bild

Betrifft: das ding will einfach nicht
von: roland_k
Geschrieben am: 25.02.2005 12:38:33
hallo reinhard
habe denke genau gemacht wie beschrieben
https://www.herber.de/bbs/user/18754.xls
in tabelle 3 steht macnmal was
keine ahnung wie das funktionieren soll ....
der drucker startet gar nicht
ein canon i560 ,.an lpt1

entweder ist was falsch verstanden oder bin wirklich zu doof ...
tabelle.........meisterschaft

in ersten vier zeilen ,,,,stehen datum...ort ...anzahl anwesende usw

die 4 zeilen drucken

drucker stop !!!!!!!!!!!

in zeile 5 ....ergebniss erste mannschaft ......diverse spalten ,,,werden ausgefüellt
wenn nun A6 ,,,,,in zeile 6 aktiviere selektiere range ausfuelle oder wie auch immer
soll zeile 5 auf gleichem püapier im drucker weiterdrucken ,,,,und wieder stop!!!
kommt in zeile 7 was ,,,,,wieder weiter ,,,,

weiss nicht ob ich da deien code anwenden kannn

wenndas mindest laufen würde auf den tabellen 1 2 3 ....koennte das irgendwie anpassen
wuesste nciht was nu falsch mache ...

ich gebs dann auf ,,,,,die beschreibungen hier bringen denke nicht das ergebniss
ansonsten sollte mal anrufen koennen ,,,dass weiss dass nicht annander vorbei reden
vielen dank
gruss roland
Bild

Betrifft: ueberträgt in tabelle 3 aber duckt nicht ??
von: roland_k
Geschrieben am: 25.02.2005 14:09:17
ha reinhard
nu funkts das in tabelle hin und her
in tab 3 steht immeer letzter eintrag ueber den 0 0 0
druckt aber nicht ,,,,
ich musste treiber neu installieren ,,,
voherh hat er aber ,,in druckespoiler geschickt ,,,
hmm
weiss auch nicht mehr weiter
gruss roland
Bild

Betrifft: Mein Code läuft bestens bei mir
von: Reinhard
Geschrieben am: 25.02.2005 14:14:10
Hi Roland,
nachfolgender Code, der auch in dieser Datei steckt:
https://www.herber.de/bbs/user/18762.xls
läuft problemlos
Durch Ändern der Zeile
Ausgabegerät = ...
kannst man ändern ob er auf dem Drucker ausgibt oder in die datei schreibt, er funtioniert in beiden Fällen.
Gestarte wird der Code in dem man Tabelle1 auswählt. Automatisch werden dann die bestehenden Werte in der Datei ausgegeben.
Jungfräulich sind das nur die ersten 5 Zeilen wie gewünscht.
Also sieht die Datei drucker.txt (bzw die Ausgabe auf dem Drucker so aus:

1: 1  a  g  1  müller  
2: 2  b  h  2  schmidt  
3: 3  c  i  3  hans  
4: 4  d  j  4  fgfg  
5: 5  e  k  5  dgf 

So, jetzt gehe in in Zeile 6 fülle dort spalten 1 bis 3 aus, erst wenn ich Zeile 10 aufsuche wird das ausgegeben, dann besuche ich nacheinenader abwechselne Zeile 12 und 14, ändere da jeweils auch was, usw. usw.
Danach sieht die Ausgabe so aus:

1: 1  a  g  1  müller  
2: 2  b  h  2  schmidt  
3: 3  c  i  3  hans  
4: 4  d  j  4  fgfg  
5: 5  e  k  5  dgf  
6: 1  2  3  
10:       4  
12:         5  
14:           6  
12:         5    7  
14:           6    8  
12:         5    7    9  
14:           6    8    10  
15:   11  
17:   12  
19:   13  
20:   14

während die Tabelle1 so aussieht:
Tabellenblattname: Tabelle1
    A | B  | C | D |    E    | F | G | H | I | J  | 
 1| 1 |  a | g | 1 |  müller |   |   |   |   |    | 
 2| 2 |  b | h | 2 | schmidt |   |   |   |   |    | 
 3| 3 |  c | i | 3 |    hans |   |   |   |   |    | 
 4| 4 |  d | j | 4 |    fgfg |   |   |   |   |    | 
 5| 5 |  e | k | 5 |     dgf |   |   |   |   |    | 
 6| 1 |  2 | 3 |   |         |   |   |   |   |    | 
 7|   |    |   |   |         |   |   |   |   |    | 
 8|   |    |   |   |         |   |   |   |   |    | 
 9|   |    |   |   |         |   |   |   |   |    | 
10|   |    |   | 4 |         |   |   |   |   |    | 
11|   |    |   |   |         |   |   |   |   |    | 
12|   |    |   |   |       5 |   | 7 |   | 9 |    | 
13|   |    |   |   |         |   |   |   |   |    | 
14|   |    |   |   |         | 6 |   | 8 |   | 10 | 
15|   | 11 |   |   |         |   |   |   |   |    | 
16|   |    |   |   |         |   |   |   |   |    | 
17|   | 12 |   |   |         |   |   |   |   |    | 
18|   |    |   |   |         |   |   |   |   |    | 
19|   | 13 |   |   |         |   |   |   |   |    | 
20|   | 14 |   |   |         |   |   |   |   |    | 

Getestet an Canon BJC 220, warum es bei dir nicht funktioniert, k.A.
Gruß
Reinhard
Der Code:
in Diese Arbeitsmappe:

Private Sub Workbook_Open()
Worksheets("Tabelle2").Activate
End Sub

in Tabelle1:

Option Base 1
Dim Ber1_5 As Boolean
Dim Dateinummer As Integer
Dim zei As Long
Dim Ausgabegerät As String
Private Sub Worksheet_Activate()
If Ber1_5 = False Then
    Dim länge(5) As Integer
    Ausgabegerät = "c:\test\drucker.txt"
    'Ausgabegerät = "LPT1"
    Dateinummer = FreeFile
    Open Ausgabegerät For Output As #Dateinummer
    sp = Application.WorksheetFunction.Max(länge)
    For z = 1 To ActiveSheet.UsedRange.Rows.Count
        Print #Dateinummer, z & ": ";
        For s = 1 To ActiveSheet.UsedRange.Columns.Count
            Print #Dateinummer, Cells(z, s) & "  ";
            'Print #Dateinummer, Tab((s - 1) * 6 + 1); Cells(z, s);
        Next s
        Print #Dateinummer, vbLf
    Next z
    Close #Dateinummer
'    For n = 1 To 5
'        länge(n) = Cells(n, 256).End(xlToLeft).Column
'        'MsgBox länge(n)
'    Next n
'    Dateinummer = FreeFile
'    Open Ausgabegerät For Output As #Dateinummer
'    sp = Application.WorksheetFunction.Max(länge)
'    For z = 1 To 5
'        Print #Dateinummer, z & ": ";
'        For s = 1 To sp
'            Print #Dateinummer, Cells(z, s) & "  ";
'            'Print #Dateinummer, Tab((s - 1) * 6 + 1); Cells(z, s);
'        Next s
'        Print #Dateinummer, vbLf
'    Next z
'    Close #Dateinummer
    Application.EnableEvents = False
    Range("A6").Select
    Application.EnableEvents = True
    zei = 6
    Range(Cells(zei, 1), Cells(zei, 256)).Copy Destination:=Worksheets("Tabelle3").Range("A1:IV2")
    For n = 1 To 256
        Worksheets("Tabelle3").Cells(3, n).FormulaR1C1 = "=if(r1c" & n & "=r2c" & n & ",0,1)"
    Next n
    Application.MoveAfterReturnDirection = xlToRight
    Ber1_5 = True
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Range(Cells(zei, 1), Cells(zei, 256)).Copy Destination:=Worksheets("Tabelle3").Range("A2:iv2")
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Row = zei Or Target.Row <= 5 Then Exit Sub
If Application.WorksheetFunction.Sum(Worksheets("Tabelle3").Range("A3:IV3")) > 0 Then
    Dateinummer = FreeFile
    'CON, AUX, COM1, COM2, COM3, COM4, LPT1, LPT2, LPT3, PRN und NUL
    If Ausgabegerät = "LPT1" Then
        Open Ausgabegerät For Output As #Dateinummer
    Else
        Open Ausgabegerät For Append As #Dateinummer
    End If
    Print #Dateinummer, zei & ": ";
    sp = Worksheets("Tabelle3").Range("IV2").End(xlToLeft).Column
        For s = 1 To sp
    Print #Dateinummer, Cells(zei, s) & "  ";
    Next s
    Print #Dateinummer, vbLf
    Close #Dateinummer
End If
zei = Target.Row
Range(Cells(zei, 1), Cells(zei, 256)).Copy Destination:=Worksheets("Tabelle3").Range("A1:IV2")
End Sub
Sub reset()
MsgBox Ber1_5
Ber1_5 = False
Close
Application.EnableEvents = True
End Sub


Bild

Betrifft: ohen drucker geht hier auch
von: roland_k
Geschrieben am: 25.02.2005 14:43:49
nu kommt aber debugger wenn das ausgabegerät lpt1 ist
Open Ausgabegerät For Append As #Dateinummer

grrrrrrrrrrrrrrrrrrr
immerhin ...die datei und das ausfuellen geht
keine ahnung was ist dateinummer ?
danke fuer deien zeit
gruss roland
Bild

Betrifft: an reinhard ----nochmal
von: roland_k
Geschrieben am: 25.02.2005 14:48:24
hi hast du den beitrag gelesen weiss nicht wie der das meint ??
Hallo roland_k,
das ist mit VBA möglich; im Gegensatz zu Reinhard würde ich aber darauf verzichten wollen, direkt die Hardware anzusprechen, da dies die Lösung weiterer Probleme verlangen wird und hier nicht nötig ist. Allerdings sind mir zwei Sachen unklar:
"startet bis zu ner bestimmten zeile druckt" : was verstehst du unter bestimmten Zeile ( da wo der Cursor steht, die letzte mit einer Eintragung in Spalte A oder was? daher: bitte Definition)
"und dann immer erst weiter geht wenn die nächste zeile ausgefuellt" ja wann ist die denn ausgefüllt (wenn in Spalte A was steht, wenn in Spalte A und B was steht, wenn in Spalte A und B zwar nichts steht, dafür aber in Spalte C oder was? daher : bitte Definition)
Gruß Roland (aus dem auftauenden Berlin)
oder geht sowas gar nicht ??

danke ...roland _k
Bild

Betrifft: AW: an reinhard ----nochmal
von: Markus
Geschrieben am: 25.02.2005 18:41:49
Hallo,
ist zwar offtopic, und ich sehe es wird hart an einer VBA Lösung gearbeitet - aber wäre der kauf einer einfachen USV (Unterbrechungsfreie Stromversorgung) nicht auch eine Lösung?
Gruß
Markus
Bild

Betrifft: hi markus...warum so kompliziert
von: roland_k
Geschrieben am: 25.02.2005 18:50:59
hallo markus
bisher ist das alles ohne pc auch gegangen
protokollfuehrer ...diktiergerät etc
aber was hindert eine fahradbauer ....ein drittes rad ...ein motor ..??
dem nutz antwort fahr weiter fahrrad nichts :-))
sehe schon...randbedingungen jede menge ....der einzige der konkret wird ist reinhard
der kan nicht dafuer dass ich dann am ende das ding nicht zum laufen bringe
vielen dank
gruss roland_k
Bild

Betrifft: hallo reinhard ----druckertest
von: roland_k
Geschrieben am: 25.02.2005 18:55:20
hallo reinhard ..danke ..deine code sind zumindest nachvollziehbar ...nur dass mein drucker nicht startet..grrrrrrrrrrrr
wie wuerde denn ein verkuerzter code lauten ev ne dos sequenz
irgendwas mit print ...wagenrücklauf ...stop oder so
ne routine die den drucker testet ....ich meine test ob drucker reagiert
danke nochml
gruss roland_k
Bild

Betrifft: append und drucker
von: Reinhard
Geschrieben am: 25.02.2005 19:07:26
Hi Roland,
Open Ausgabegerät For Append As #Dateinummer
kommt nur einmalig vor (auf das Append bezogen)
In dieser Sequenz:    
...
Dateinummer = FreeFile
    'CON, AUX, COM1, COM2, COM3, COM4, LPT1, LPT2, LPT3, PRN und NUL
    If Ausgabegerät = "LPT1" Then
        Open Ausgabegerät For Output As #Dateinummer
    Else
        Open Ausgabegerät For Append As #Dateinummer
    End If
    Print #Dateinummer, zei & ": ";
...

Deshalb kann es nicht sein dass der Debugger beim "LPT1" wegen dem "Append sich meldet.
Gruß
Reinhard
Bild

Betrifft: print hello oder so was will testen :-((
von: roland_k
Geschrieben am: 25.02.2005 19:19:26
hi reinhard...
weiss nicht was da war ....
ich sollten nen einfachen printbefehhl aus excel heraus machen ...drucker ansteuern ?
wenn ich auf datei drucken gehe ,,,oder symbolleiste ,,dann druckt der ja
nur mit er anweisung an lpt1 irgendwie nicht ?
irgendwie ein modul oder so...wo ich mit F8 die schritte verfolgen kann ??
langsam habe kopfschmerzen :-((

danke fuer deine geduld ...gruss roland_k
Bild

Betrifft: hochgeladene datei
von: roland_k
Geschrieben am: 25.02.2005 20:00:12
hi reinhard
die beiden code sind unterschiedlich .....
eine im trhread einkopiert ....mit dem sollte er drucken
dein hochgeladener code
ausgabe in datei....ist wohl der coder der auch mit drucker funktioniert
diesen habe ich ...versucht wieder umfunktionieren in ausgabe lpt1
aber da stimmts einfach was nicht
wenn ich beide code vergleiche sind diese unterschiedlich
kann es sein dass du nicht den code wo das ding mit drucker läuft hochgeaden hast ??
schier unmoeglich dass das bei dir lauft und hier nicht ?

habe unten nochmal reinkopiert ,,,,das war der mit dateiausgabe ,,,das ghet ja auch
aber wenn ausgabe gerät lpt1 dann eben nicht.
gruss roland

**********************************************************************************
Option Base 1
Dim Ber1_5 As Boolean
Dim Dateinummer As Integer
Dim zei As Long
Dim Ausgabegerät As String

Private Sub Worksheet_Activate()
If Ber1_5 = False Then
    Dim länge(5) As Integer
    'Ausgabegerät = "c:\test\drucker.txt"
    Ausgabegerät = "LPT1"
    Dateinummer = FreeFile
    Open Ausgabegerät For Output As #Dateinummer
    sp = Application.WorksheetFunction.Max(länge)
    For z = 1 To ActiveSheet.UsedRange.Rows.Count
        Print #Dateinummer, z & ": ";
        For s = 1 To ActiveSheet.UsedRange.Columns.Count
            Print #Dateinummer, Cells(z, s) & "  ";
           'Print #Dateinummer, Tab((s - 1) * 6 + 1); Cells(z, s);
        Next s
        Print #Dateinummer, vbLf
    Next z
    Close #Dateinummer
    For n = 1 To 5
       länge(n) = Cells(n, 256).End(xlToLeft).Column
        MsgBox länge(n)
    Next n
   Dateinummer = FreeFile
  Open Ausgabegerät For Output As #Dateinummer
    sp = Application.WorksheetFunction.Max(länge)
   For z = 1 To 5
       Print #Dateinummer, z & ": ";
        For s = 1 To sp
           Print #Dateinummer, Cells(z, s) & "  ";
           Print #Dateinummer, Tab((s - 1) * 6 + 1); Cells(z, s);
       Next s
        Print #Dateinummer, vbLf
   Next z
   Close #Dateinummer
    Application.EnableEvents = False
    Range("A6").Select
    Application.EnableEvents = True
    zei = 6
    Range(Cells(zei, 1), Cells(zei, 256)).Copy Destination:=Worksheets("Tabelle3").Range("A1:IV2")
    For n = 1 To 256
        Worksheets("Tabelle3").Cells(3, n).FormulaR1C1 = "=if(r1c" & n & "=r2c" & n & ",0,1)"
    Next n
    Application.MoveAfterReturnDirection = xlToRight
    Ber1_5 = True
End If
End Sub


Private Sub Worksheet_Change(ByVal Target As Range)
Range(Cells(zei, 1), Cells(zei, 256)).Copy Destination:=Worksheets("Tabelle3").Range("A2:iv2")
End Sub


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Row = zei Or Target.Row <= 5 Then Exit Sub
If Application.WorksheetFunction.Sum(Worksheets("Tabelle3").Range("A3:IV3")) > 0 Then
    Dateinummer = FreeFile
    'CON, AUX, COM1, COM2, COM3, COM4, LPT1, LPT2, LPT3, PRN und NUL
    If Ausgabegerät = "LPT1" Then
        Open Ausgabegerät For Output As #Dateinummer
    Else
        Open Ausgabegerät For Append As #Dateinummer
    End If
    Print #Dateinummer, zei & ": ";
    sp = Worksheets("Tabelle3").Range("IV2").End(xlToLeft).Column
        For s = 1 To sp
    Print #Dateinummer, Cells(zei, s) & "  ";
    Next s
    Print #Dateinummer, vbLf
    Close #Dateinummer
End If
zei = Target.Row
Range(Cells(zei, 1), Cells(zei, 256)).Copy Destination:=Worksheets("Tabelle3").Range("A1:IV2")
End Sub

Sub reset()
MsgBox Ber1_5
Ber1_5 = False
Close
Application.EnableEvents = True
End Sub
Bild

Betrifft: 2 tage verbraten_wo ist der fehler?
von: roland_k
Geschrieben am: 26.02.2005 05:35:23
hallo reinhard
moechte dichnochmal bitten genau die datei mit der bei dir der drucker läuft zu schicken oder hochladen.........will sicher sein dass ich nichts falsch mache hier
geradezu unmoeglich ....dein drucker ist auch an lpt1 ?
oder koennte excel version ursache sein ?
nun habe ich stunden an dem thema rumgemacht und das ding läuft nicht
immerhin in die textausgabe das geht .....
genau diese datei hätte ich gerne ....aber nicht ummodifiziert sondern wo ausgabegerät der drucker ist.
wenn ich wuesste wie drucker testen kann mit dem print befehl ?
ein wort drucken und stoppen....
open lpt1..........print "hallo " oder so ??
danke nochmals
gruss roland_k
Bild

Betrifft: AW: 2 tage verbraten_wo ist der fehler?
von: Reinhard
Geschrieben am: 26.02.2005 15:44:15
Hi Roland,
du hast den Originalcode schon.
Weiterhin spielt der Code derzeit absolut keine Rolle.
Der Code beruht darauf, dass z.B. diese Sub:
Sub roland()
Dateinummer = FreeFile
Open "LPT1" For Output As #Dateinummer
Print #Dateinummer, "Hello World":
Close #Dateinummer
End Sub
funktioniert. D.H. bei jdem Aufruf wird die Zeile "Hello World" auf dem Drucker ausgegeben 
und er bleibt an der Stelle stehen um auf weiteres zu warten.
Solange das bei dir nicht klappt ist der restliche Code egal.
Tipp, installiere einen zweiten Drucker, meinen Canon220 z.B., oder einen noch älteren Drucker, weise dem den
Standarddru ckertreiber von Windows oder falls in Windows gespeichert den passenden Treiber zu und probiere mal 
auf diesem virtuellen Drucker, denn angeschlossen ist ja noch dein 560, auszudrucken.
Gruß
Reinhard

Bild

Betrifft: hi reinhard..bin dabei bitte lesen
von: roland_k
Geschrieben am: 26.02.2005 18:24:55
hallo reinhard
schlaflose nächte
hoere nicht gut,,,,mein sohn war daneben er sgt der drucker macht kurzes geräusch bei der eingabe
habe canon angeschrieben ....warte mal ab ...wird eh nichts ))
habe mal bei altem dos gestoebert
der hat prn voreingestellt .....soll in autoexec lpt1 zuweisen
habe den code nem kollegen geschickt d h die mappe ...)) muss erst hinfahren der hat no weniger ahnung wie ich
habe 5 alte drucker rumstehn aber ueberall die tinte zu teuer :-((
werde dran bleiben....
aber: jetzte ....die neuen drucker haben alle usb ...kann ja dem anwender nicht vorschreiben alten drucker anhängen
das gannze soll eh auf laptop laufen
der canon560 ha auch usb wahlweise ...
da ist mir noch was aufgefallen ...habe nen hp1100 a3 am lpt1 gehabt...die druckerwarte schlange war gefuellt ...von meiner mappe her
habe zu spät dran gedacht ....jeden falls wollte der auf dem drucker drucken
d h ....die sequenzen werden an lpt1 richtig gesendet
eigentich haste das superschnell geloest ...bin eben blond .hätte gleich sollen an andern rechner ))
wenn da ne loesung wäre fuer usb wäre natuerlich genial
aber einige sagten schon das ginge nur mit altem drucker die neuen koennen das nicht
da habe aber zweifel
sorry den langen text ......

bin gerade an was anderm am rumirren ...habe heute neuen beitrag wegen msgbox gestellt :-))
bloede frage wie kann ich dich hier erreichen ...ev mailen?
danke dir fuer geduld und die muehe
gruss roland_k
Bild

Betrifft: USB Drucker über DOS ansprechen
von: Reinhard
Geschrieben am: 26.02.2005 19:05:32
Hi Roland,
ja, über USB angeschlossene Drucker kann man normalerweise nicht über Dos ansprechen.
Auf http://www.dse.nl/~tmk/clipper/clpwinprint.htm#USB%20Printers gibt es Programme, die das können, wenn ich folgende Sätz richtig deute:
****************************************************************************************
USB Printers
USB-only printers (i.e. printers that do not have a parallel interface) pose a special problem: they cannot be addressed in any way directly from an MS/DOS environment. All the products listed above will solve this problem for you.
An alternative solution is described below. It works in Windows/2000 (and presumably /XP, but this has not been verified). It also works on Windows/NT, but as NT does not support a USB port, there is little point of doing this in that operating system :-) .
****************************************************************************************
Gruß
Reinhard
Bild

Betrifft: engl...7 siegel ..habe treiber canon220
von: roland_k
Geschrieben am: 27.02.2005 16:08:45
halli reinhard
habe meine canon den treiber von deinem drucker gegeben
der drucker funkts
bloede frage
datei oeffen ,,,in tab1 eintragungen machen
wann startet der dann ?
der drucker ist eingeschaltet ...
geht einfach nix
dein testcode da findet dateinummer nicht
im andern kommt immer msgbox "5"
nun gebe langsam auf
schade um die muehe ..aber engl ...kann kaum ...da will nicht weitersuchen
gruss roland_k
 Bild

Beiträge aus den Excel-Beispielen zum Thema "Zeilen markieren wenn doppelt"