Textbox + Rechnen = Problem

myplex

Erfahrenes Mitglied
Wir haben ein Programm programmiert und wollten einige texte, der textbox zusammenrechnen, aber der Computer erkennt das Argument text nicht. Wir wissen einfach nicht woran das liegt, kann uns jemand helfen

Quellcode :

------
Public Gesamt
-----

Private Sub cmdAuswerten_Click()
Gesamt = txtNotenEingabe01.Text + txtNotenEingabe02.Text + txtNotenEingabe03.Text + txtNotenEingabe04.Text + txtNotenEingabe05.Text + txtNotenEingabe06.Text + txtNotenEingabe07.Text + txtNotenEingabe08.Text + txtNotenEingabe09.Text + txtNotenEingabe10.Text + txtNotenEingabe11.Text + txtNotenEingabe12.Text + txtNotenEingabe13.Text + txtNotenEingabe14.Text + txtNotenEingabe15.Text + txtNotenEingabe16.Text + txtNotenEingabe17.Text + txtNotenEingabe18.Text + txtNotenEingabe19.Text + txtNotenEingabe20.Text

End Sub
-----
 
Es gibt sogenannte "Typ-Umwandlungfunktionen". Damit kannst Du dann die Werte der TextBoxs z.B. in Integer CInt(), Double CDbl() oder mit welchem Typ Du eben rechnen möchtest, umwandeln...
 
Frage nicht verstanden !
Inzwischen schon :)
Allerdings, wenn Du das Problem mit dem Argument Text gelöst hast, solltest Du die Strings trotzdem umwandeln , sonst hängt er die Werte aneinander.

Aber zu Deinem Text-Problem. Also wenn die TextBoxs genau so heissen, wie Du sie im Code ansprichst, dann sollte er die Eigenschaft Text auch zur Auswahl anbieten, oder wenigstens akzeptieren. Woran machst Du denn fest, dass er Text nicht kennt? Kommt eine Fehlermeldung, wenn ja - welche?
 
find ich ja schön das du das problem gelöst hast, aber jetzt steh ich vor dem problem und will die sahcen zusammenrechnen. aber nicht und deswegen muss ich das umwandeln. VB soll mir nicht die zahle aneinander knallen sondern zusammenrechnen
 
Hallöchen

Wenn du mit den Inhalten von Textboxen rechnen möchtest solltest du die Endung .Text weglassen. Sonst wird der Inhalt als String interpretiert. Wenn die Endung wegbleibt
wird der Inhalt als Integer mit dem man rechnen kann, interpretiert. Hat natürlich auch den
NAchteil, dass wenn in diesem Textfeld ein Buchstabe steht eine Fehlermeldung ausgegeben wird.
 
Wenn die Endung wegbleibt wird der Inhalt als Integer mit dem man rechnen kann, interpretiert.
Also da muss ich dir mal wiedersprechen, Spirit.
Wenn man das ".Text" weglässt, dann nimmt VB automatisch die Standard-Eigenschaft "Text". VB tut das nur, um Schreibarbeit abzunehmen. Bei anderen Steuerelementen gibt es andere Eigenschaften, die man nicht explizit angeben muss. Bei der PictureBox ist dass zum Beispiel die Eigenschaft "Picture". Das heißt, man kann ein Bild in eine PictureBox auf 2 Arten laden:
Code:
Picture1.Picture=IrgendeinBild
 
oder:
 
Picture1=IrgendeinBild
Das gleiche ist bei der TextBox. Dort ist die Standard-Eigenschaft eben "Text".
Ich würde das "Text" jedoch nie weglassen, weil der Code sonst unübersichtlicher wird.

Aber um die Frage zu beantworten: Verwende einfach die wie oben genannten Konvertierungsfunktionen, zum Beispiel CInt()
Code:
Ergebnis= CInt(Text1.Text) + CInt(Text2.Text)

Wenn in der Textbox auch Kommazahlen stehen können, dann verwende CSng oder CDbl
 
Zuletzt bearbeitet:
Zurück