Thema Datum  Von Nutzer Rating
Antwort
01.11.2007 19:56:53 Fabian
NotSolved
Blau Aw:Rechnung in MsgBox einfügen
02.11.2007 09:37:31 Holger
NotSolved

Ansicht des Beitrags:
Von:
Holger
Datum:
02.11.2007 09:37:31
Views:
1029
Rating: Antwort:
  Ja
Thema:
Aw:Rechnung in MsgBox einfügen
Hallo Fabian,
es gibt mehrere Variablentypen, u.a. nummerische Variabel (Zahlen, z.B. Integer, Long, ...) und Strings (Zeichenketten). Ziffernreihen können sowohl nummerische als auch Stringvariablen sein, je nachdem wie sie erzeugt wurden: a=12 ist z.B. eine nummerische, b="12" z.B. eine Stringvariable. Man kann Zahlen in Strings verwandeln mit dem Befehl c=Str(a). Dann ist in unserem Beispiel c=" 12". Achte auf das Leerzeichen am Anfang des Strings, dort steht das Vorzeichen, dass bei Zahlen>=0 als Leerzeichen dargestellt wird. In unserem Beispiel ist also b ungleich c! Umgekehrt kann man Strings in nummerische Variablen mit dem Befehl d=Val(b) umwandeln. Enthält b keinen String, dessen Anfangsstück als Zahl interpretiert werden kann, wird d zu 0.
MsgBox benötigt für den anzuzeigenden Wert eine Stringvariable, die ggf. erst zusammengefügt werden muss. Wenn du Stringvariabeln verketten willst, gibt es dafür die beiden Operatoren + und &. Die Unterschiede entnimm wie auch die genauen Erläuterungen zu den genannten Befehlen und MsgBox der VBA-Hilfe.
Jetzt zu deinem Problem. Die Zeile kann z.B. heißen:

MsgBox "Provision entspricht" & Str(umsatz*provisionssatz/100) & " €"

Willst du den erzeugten String manipulieren, sieh unter Left, Right, Mid, InStr, Format in der VBA-Hilfe nach, wilst du das nummerische Ergebnis vor der Umwandlung in einen String runden oder auf eine bestimmte Nachkommaanzahl abschneiden, können zusätzlich die Round- und Int-Funktion Bedeutung haben.

Gruß
Holger

Fabian schrieb am 01.11.2007 19:56:53:

Ich bin jetzt schon weiter, die Frage ist wie ich das ergebins einer rechnung in den Text der MsgBox einfüge?
Hab die Rechnungen mit ! gekennzeichnet!

Private Sub CommandButton1_Click()

Dim umsatz As Long
Dim provisionsgrenze As Long
Dim provisionssatz As Integer

umsatz = Range("B3")
provisionsgrenze = Range("B4")
provisionssatz = Range("B5")

If (umsatz > provisionsgrenze) Then
MsgBox "!provisionssatz! Provision entspricht !umsatz*provisionssatz/100!"

Else
MsgBox "Keine Provision"

End If

End Sub

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
01.11.2007 19:56:53 Fabian
NotSolved
Blau Aw:Rechnung in MsgBox einfügen
02.11.2007 09:37:31 Holger
NotSolved