Microsoft Office Tutorials and References
In Depth Information
11.4.9 Unterdialogfeld »Bestellungen Neu«
' Zeile mit ausgewähltem Artikel suchen
Zeile = ZeileArtikelSuchen(Me)
' Gesamtpreis ermitteln
Gesamtpreis = Cells(Zeile, 5).Value * txtAnzahl.Text
' Ausgabezeile erzeugen,
' der Liste und der Mail hinzufügen
AusgabeZeile = _
Format(txtAnzahl.Text,"@@@")&""&_
Format(Cells(Zeile, 1).Value, "@@@") & _
""&_
Format(Left(Cells(Zeile, 2).Value, 24), _
"!@@@@@@@@@@@@@@@@@@@@@@@@")&""&_
Format(Format(Cells(Zeile, 5).Value, _
"#,##0.00€"), "@@@@@@@@@") & " " & _
Format(Format(Gesamtpreis, "#,##0.00€"), _
"@@@@@@@@@@")
lstBestelldetails.AddItem AusgabeZeile
MailBody = MailBody & vbCrLf & AusgabeZeile
' Daten in dynamischem Feld speichern
Bestelldetail(PNr).Anzahl = txtAnzahl.Text
Bestelldetail(PNr).Artikelnummer = _
Cells(Zeile, 1).Value
' Ausstieg vor Fehlerbehandlung
Exit Sub
Fehler:
' Falls das dynamische Feld noch
' keine Größe hat, dann ist PNr = 0
PNr = 0
Resume Next
End Sub
Zur Erläuterung:
Zunächst wird geprüft, ob eine Anzahl für den hinzuzufügenden Arti-
kel eingestellt wurde. Falls nicht, wird das Hinzufügen abgelehnt.
Anzahl nicht leer
Mit der Funktion UBound() wird die bisherige Größe des dynami-
schen Feldes festgestellt, also die aktuelle Anzahl an Bestellposten.
Falls es noch keine Bestellposten gibt, führt dieser Aufruf zu einem
Fehler. Dieser Fehler wird mit Hilfe von On Error abgefangen. Die
Größe wird dann mit 0 angegeben, und die Prozedur wird mit der
nächsten Anweisung fortgesetzt.
Größe feststellen
Search JabSto ::




Custom Search