Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Eingaben werden nicht addiert
#11
Hallo!

Diese Lösung mit 
Code:
CDbl(wert1) + CDbl(wert2)

habe ich auch schon gemacht und hat auch funktioniert. Nur hatte ich dann bei folgender Codestelle das Problem:

Code:
If (CStr(wert1) + CStr(wert2)) > CStr(Range("E3")) * 5 Then

Hier kommt nämlich "Typen unverträglich"

Anbei mein aktueller Code, wahrscheinlich mache ich noch immer etwas falsch:


Code:
Dim wert1, wert2


Do
       
        wert1 = InputBox("Bitte neuen 1. Wert eingeben: " & String(2, vbNewLine) & _
        "alter Wert: € " & alterWert & " vom " & alterWertDatum)
       
        If wert1 = "" Then Exit Sub
       
        wert2 = InputBox("Bitte neuen 2. Wert eingeben: " & String(2, vbNewLine) & _
        "alter Wert: € " & alterWert & " vom " & alterWertDatum)
       
        'wert = wert1 + wert2'
       
        If (CStr(wert1) + CStr(wert2)) > CStr(Range("E3")) * 5 Then
            MsgBox ("Dein von dir eingegebener Wert ist um " & Format(((wert1 + wert2) / Range("E3")) * 100, "#,##0") & " % größer als der alte Wert.")
       
        End If
   
    Loop Until ((wert1 + wert2) / Range("E3")) * 100 < 500
       
        .Range("E3").Value = CDbl(wert1) + CDbl(wert2)
Excel Version 2016
Antworten Top
#12
Moin!
Darf ich mal die ketzerische Frage stellen, warum Du nicht einfach Zellen nimmst?
Schließlich betreffen Deine bisherigen Fehler ausschließlich absolutes Grundlagenwissen in VBA.
Was CStr() bewirkt, weißt Du?

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#13
Convert in string, oder?
Excel Version 2016
Antworten Top
#14
Korrekt! 
Und, kann man Texte addieren?
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#15
Moinsen,

mich machen fehlende Grundlagen und Beratungsresistenz wahnsinnig. Also, statt rumzudoktern direkt richtig: Die Application.InputBox könnte schon beim Aufruf den Datentyp sicherstellen, wenn der TE nicht in der Lage ist, implizite und explizite Typenkonvertierung einzusetzen.

Code:
'Direktfenster
?VarType(InbutBox("Zahl bitte"))=vbDouble
?VarType(Application.InputBox("Test", Type:=1)) =vbDouble

Viele Grüße
derHöpp
Antworten Top
#16
Hallöchen,

Zitat:Und, kann man Texte addieren?

man könnte denken, ja. Smile

Sub test()
MsgBox "a" + "b"
End Sub

... ok, a und b werden dadurch verkettet Sad
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#17
Natürlich kann man Texte addieren.
"a"+"b" ergibt bei mir Ã
Code:
?ChrW(AscW("a")+AscW("b"))
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#18
... das ist aber geschummelt ...
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#19
Schummeln habe ich (auch) in diesem Forum gelernt. Wink
Schließlich kann 17+4 auch 42 sein:
Arbeitsblatt mit dem Namen 'Tabelle2'
A
117
24
342

ZelleFormatWert
A3"42"21

ZelleFormel
A3=A1+A2
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste