Nettorechner mit userform in vba?

3 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet

Hi

Ich bin es schon wieder :)

Muss man lediglich einen Betrag eingeben, davon wird 20% abgezogen und das Resultat steht dann bei Nettobetrag?


Fabomat 
Beitragsersteller
 28.09.2018, 11:47

Ja genau! In weiterer Folge dann auf 2 stellen gerundet und einer „löschautomatik“(Nettopreis wird gelöscht sobald im Bruttofeld was geändert wird)

0
gabrixl  28.09.2018, 11:52
@Fabomat

Da ich dir nicht einfach die Lösung geben will, geb ich dir einfach die Befehle die du brauchen musst:

Um den Wert eines Text-Feldes in eine Variable zu speichern:

VAR = TextBox1.Text

Um das Resultat in einem Label darzustellen:

LABEL.Caption = "Dein Text" & varResultat

Die Rechnung dafür schaffst du selber, dazu kommt noch das nur Zahlen verrechnet werden können etc. aber weiss nicht wie weit du da machen musst.

1
gabrixl  28.09.2018, 11:54
@gabrixl

Kleiner Tipp für die nächste Aufgabe > Doppelklick auf eine TextBox erstellt ein "TextBox_Change Sub", welcher ausgeführt wird wenn sich der Wert der TextBox ändert ;)

0
gabrixl  28.09.2018, 12:05
@Fabomat

Kein Ding, positive Bewertung und "Danke" immer gern gesehen

1
Fabomat 
Beitragsersteller
 28.09.2018, 19:48
@gabrixl

Jetz muss ich doch nochmal nachfragen...

Bei sub für die Textbox geb ich textbox1.text=var,

beim sub für den Button dann label.caption=varresultat

icu vermute mal dass ich am Button auch die Formel 80*var/100=varresultat dazugeben muss, ich schaffe nur nicht! Fehlt mir da ein Kommando damit er erkennt dass er da was rechnen soll!

man merkt wohl, dass ich vor paar Tagen zum ersten Mal was damit zu tun hatte! Danke auf jeden Fall jetzt schon

0
gabrixl  01.10.2018, 08:42
@Fabomat

Hi, sorry das ich erst jetzt antworte.

Wichtig ist das die Variable, welcher einen Wert zugewiesen wird, immer vor dem Gleich steht. Also:

Dim varResultat As Double 'Definition der Variable fürs Resultat (als Double)
varResultat = TextBox1.Text 'Text von TextBox1 wird der varResultat zugewiesen

varResultat = 80 * varResultat / 100 'Verrechnung

Jetzt hast du mal das gesuchte Resultat in der Variable varResult. Um das jetzt noch auszugeben fügst du ein Label hinzu, in welchem das Resultat dann dargestellt wird:

Label1.Caption = "Das Resultat lautet: " & varResult

Jetzt brauchst du die Verrechnung / Darstellung nur in den ButtonClick Sub einzufügen. Für die nächste Aufgabe kannst du einen Doppelklick auf das Eingabefeld machen, welche dir dann im Code den TextBox1_Changed Sub erstellt. Dort brauchst du nur:

Label1.Caption = ""

Einzufügen, damit er sobald sich der Text im Eingabefeld ändert, dass zuvor berechnete Resultat mit nichts ersetzt.

Rate dir direkt von Beginn an die Steuerobjekte sinnvoll zu benennen. D.h. mit Namen mit Präfix vergeben, damit diese im Nachhinein nachvollziehbarer angesprochen werden können.

Also mache es grundsätzlich immer so:

  • Label = lbl_Name, in deinem Fall also "lbl_resultat"
  • TextBox = txtb_Name, in deinem Fall also "txtb_eingabe"
  • Button = btn_

usw.

Kannst mir sonst gerne über mein Profil eine Nachricht schreiben, falls du nicht weiter kommst.

1

Also so einfach sollte es hier dir keiner machen denn du sollst ja lernen aber ich geb dir den Theoretischen weg.

20*eingabe/100 <- Rechung. Das Ergebnis ist der Nettobetrag, eingabe=Bruttobetrag

Fabomat 
Beitragsersteller
 28.09.2018, 11:50

bin da absolut deiner Meinung, mein Problem is dass wir eig kein richtiges Skript vorliegen haben und mir deshalb bestimmte Befehle einfach nicht bekannt sind! Der Ablauf an sich is mir recht klar, die Sprache fehlt mir noch...

0
Sp4ghett1C0de  28.09.2018, 11:53
@Fabomat

Hast du die form schon fertig so aufgebaut? Also so das du nur noch die abfragen machen musst?

0
Fabomat 
Beitragsersteller
 28.09.2018, 12:00
@Sp4ghett1C0de

jo! Gibt im Skript eine Vorlage in welche Richtung das ganze ausschauen soll, im Prinzip wie meines...

0

Google defekt?

Hunderte von einfachen Beispielen.

Userform basteln, Formel bei Button hinterlegen.