AW: userform in tabellenblatt Anzeigen lasen
09.11.2009 15:42:24
fcs
Hallo Fredy,
wenn die Hardware im Auftrag in einer Zeile ausgedruckt werden soll, dann mit folgender Anpassung, wobei ich das Eintragen der Bescheidungs-Daten auch noch ein wenig korrigiert hab.
Allerdings ist der Platz in den 2 Zellen für den Bezeichnungstext sehr knapp bemessen.
Gruß
Franz
geänderter Teil der Prozedur zum Anzeige-Button.
'Daten aus Bescheidung eintragen
Zeile = CLng(Me.TextBoxBeschreidungZeile)
SpalteD = 2 'Spalte B
ZeileD = 25 'Bescheidung
With wksBescheidung
wksDrucker.Cells(ZeileD, SpalteD) = .Cells(Zeile, 5).Text _
& IIf(.Cells(Zeile, 6) = "", "", vbLf & .Cells(Zeile, 6).Text) _
& IIf(.Cells(Zeile, 7) = "", "", vbLf & .Cells(Zeile, 7).Text)
End With
' Hardware Liste eintragen
SpalteD = 1 'Spalte A _Spalte in der die Posten-Nummer eingetragen wird
ZeileD = 34 'Zeile für Werte von Posten 1
'Altdaten Hardwareliste löschen
With wksDrucker
.Range(.Cells(ZeileD, SpalteD), _
.Cells(ZeileD, SpalteD).Offset(11, 4)).ClearContents
End With
'Daten aus Blatt Hardwareliste eintragen
Zeile = CLng(Me.TextBoxHardwareZeile) 'Zeilennummer im Blatt Hardwareliste
With wksHardware
For Posten = 1 To 6
Spalte = 5 + (Posten - 1) * 4 'Spalte mit Titel "Posten X", _
in der jeweils die Anzahl steht
'Prüfen, ob Anzahl für Posten eingetragen ist
If wksHardware.Cells(Zeile, Spalte) > 0 Then
'Zeile für Posten ausfüllen
wksDrucker.Cells(ZeileD, SpalteD) _
= .Cells(Zeile, Spalte).Value 'Anzahl
wksDrucker.Cells(ZeileD, SpalteD + 1) _
= .Cells(Zeile, Spalte + 1).Value 'Artikel-Nummer
wksDrucker.Cells(ZeileD, SpalteD + 2) _
= .Cells(Zeile, Spalte + 2).Value 'Bezeichnung
wksDrucker.Cells(ZeileD, SpalteD + 4) _
= .Cells(Zeile, Spalte + 3).Value 'Preis
'Zeile nächster Posten
ZeileD = ZeileD + 2
End If
Next
End With
'Verrechnungs-Daten im Blatt "Drucker" eintragen