06.03.2018, 08:18
Hallo!
Ich habe folgendes Problem. Ich gebe in einer InputBox (Einzahlung) einen Wert ein, nur wenn ich z.B. 50,01 eingebe, wird diese nicht richtig in die bestimmte Zeile geschrieben, dass damit weitergerechnet werden kann. Er schreibt mir zwar 50,01 in die Zelle, aber kann damit nicht weiter rechnen. Erst wenn ich in die Zelle klicke und Enter Taste drücke, wandelt er den Wert richtig um. Wenn ich aber in der Inputbox 50.01 eingebe, funktioniert es, dass damit nachher richtig weiter gerechnet werden kann.
Ich hoffe, dass mir jemand weiterhelfen kann.
Anbei mein aktueller Code:
Ich habe folgendes Problem. Ich gebe in einer InputBox (Einzahlung) einen Wert ein, nur wenn ich z.B. 50,01 eingebe, wird diese nicht richtig in die bestimmte Zeile geschrieben, dass damit weitergerechnet werden kann. Er schreibt mir zwar 50,01 in die Zelle, aber kann damit nicht weiter rechnen. Erst wenn ich in die Zelle klicke und Enter Taste drücke, wandelt er den Wert richtig um. Wenn ich aber in der Inputbox 50.01 eingebe, funktioniert es, dass damit nachher richtig weiter gerechnet werden kann.
Ich hoffe, dass mir jemand weiterhelfen kann.
Anbei mein aktueller Code:
Code:
Private Sub Worksheet_Activate()
Dim gewinn As Double
Dim prozent As Double
Dim prozentseitAbschluss As Double
Dim wert As Variant
Dim Einzahlung As Variant
alterWert = Cells(3, 9)
alterGewinn = Cells(8, 3)
GewinnVerlust = Cells(5, 4)
alterProzentseitAbschluss = Cells(7, 3)
alterWertDatum = Cells(3, 4)
alterProzentmitheutigemTag = Cells(6, 3)
alterWertGewinnVerlust = Cells(11, 5)
höchsterGewinn = Cells(8, 10)
höchsterGewinnDatum = Cells(8, 6)
höchsterProzentseitAbschluss = Cells(10, 10)
höchsterProzentseitAbschlussDatum = Cells(9, 9)
höchsterProzent = Cells(9, 10)
höchsterProzentDatum = Cells(8, 9)
Dim sh As Worksheet
Set sh = Sheets("ING ARIA - ING Global Index") 'hier deinen Tabellennamen anpassen
Dim lr As Integer
Dim i As Integer ' immer alle Variablen deklarieren
Dim fehlendeMonate As Integer ' immmer mit Option explicit arbeiten
Einzahlung = InputBox("Wurde eine neue Einzahlung verbucht? Wenn ja, dann bitte diese eingeben: ", "Eingabeaufforderung © by Biggi & Tommy")
With Worksheets("ING ARIA - ING Global Index")
If Einzahlung = "" Then
Else
.Cells(.Cells(.Rows.Count, 3).End(xlUp).Row + 1, 1).Formula = Date
.Cells(.Cells(.Rows.Count, 3).End(xlUp).Row + 1, 2).Formula = "Einzahlung"
End If
.Cells(.Cells(.Rows.Count, 3).End(xlUp).Row + 1, 3).Formula = Einzahlung
wert = InputBox("Bitte neuen Wert eingeben: " & String(2, vbNewLine) & _
"alter Wert: € " & alterWert & " vom " & alterWertDatum & String(1, vbNewLine) & _
GewinnVerlust & " € " & alterGewinn & String(1, vbNewLine) & _
alterProzentmitheutigemTag & " % mit heutigem Tag" & String(1, vbNewLine) & _
alterProzentseitAbschluss & " % seit Abschluss" & String(2, vbNewLine) & _
"höchster Gewinn: € " & höchsterGewinn & " " & höchsterGewinnDatum & String(1, vbNewLine) & _
"höchster Prozentsatz: " & höchsterProzent & " " & höchsterProzentDatum & String(1, vbNewLine) & _
"höchster Prozentsatz: " & höchsterProzentseitAbschluss & " " & höchsterProzentseitAbschlussDatum & "", "Eingabeaufforderung © by Biggi & Tommy")
If wert = "" Then Exit Sub
.Range("E3").Value = CDbl(wert)
gewinn = .Range("E5").Value
prozent = .Range("h5").Value
prozentseitAbschluss = .Range("h6").Value
.Range("d3").Value = Date
DifferenzGewinnkleiner = .Range("M8").Value
GewinnVerlust1 = Cells(5, 4)
höchsterVerlustniedrigsterGewinnWert = .Range("E11")
höchsterVerlustniedrigsterGewinn = .Range("D11")
höchsterVerlustniedrigsterGewinnDatum = .Range("G11")
If gewinn > .Range("e8").Value And prozent > Range("h8").Value Then
.Range("e8").Value = gewinn
.Range("f8").Value = "am " & Date
höchsterGewinn1 = .Range("J8").Value
.Range("L9").Value = gewinn - höchsterGewinn
DifferenzGewinngrößer = .Range("M9").Value
.Range("A1").Value = gewinn - alterGewinn
DifferenzGewinnLetzterGewinn = .Range("B1").Value
.Range("A2").Value = prozent - alterProzentmitheutigemTag
DifferenzProzentLetzterProzent = .Range("B2").Value
.Range("A3").Value = prozentseitAbschluss - alterProzentseitAbschluss
DifferenzProzentseitAbschlussLetzterProzentseitAbschluss = .Range("B3").Value
.Range("A4").Value = prozent - höchsterProzent
DifferenzhöchsterProzentLetzterhöchsterProzent = .Range("B4")
.Range("A5").Value = prozentseitAbschluss - höchsterProzentseitAbschluss
DifferenzhöchsterProzentseitAbschlussLetzterhöchsterProzentseitAbschluss = .Range("B5").Value
alterProzentmitheutigemTag1 = Cells(7, 10)
alterProzentseitAbschluss1 = Cells(6, 10)
MsgBox "Neuer höchster Gewinn von € " & höchsterGewinn1 & ", welcher um € " & DifferenzGewinngrößer & " höher ist, als der alte höchste Gewinn von € " & höchsterGewinn & ", welcher " & höchsterGewinnDatum & " war, bzw. ist er seit der letzten Aktualisierung " & DifferenzGewinnLetzterGewinn & " der letzte " & GewinnVerlust & String(1, vbNewLine) & _
"€ " & alterGewinn & ", welcher am " & alterWertDatum & " war.", vbInformation, "Achtung! © by Biggi & Tommy"
.Range("B8").Value = gewinn
.Range("B6").Value = prozent
.Range("B7").Value = prozentseitAbschluss
Else
If gewinn > .Range("e8").Value And prozentseitAbschluss > Range("h9").Value Then
.Range("e8").Value = gewinn
.Range("f8").Value = "am " & Date
höchsterGewinn1 = .Range("J8").Value
.Range("L9").Value = gewinn - höchsterGewinn
DifferenzGewinngrößer = .Range("M9").Value
.Range("A1").Value = gewinn - alterGewinn
DifferenzGewinnLetzterGewinn = .Range("B1").Value
.Range("A2").Value = prozent - alterProzentmitheutigemTag
DifferenzProzentLetzterProzent = .Range("B2").Value
.Range("A3").Value = prozentseitAbschluss - alterProzentseitAbschluss
DifferenzProzentseitAbschlussLetzterProzentseitAbschluss = .Range("B3").Value
.Range("A5").Value = prozentseitAbschluss - höchsterProzentseitAbschluss
DifferenzhöchsterProzentseitAbschlussLetzterhöchsterProzentseitAbschluss = .Range("B5").Value
alterProzentmitheutigemTag1 = Cells(7, 10)
alterProzentseitAbschluss1 = Cells(6, 10)
MsgBox "Neuer höchster Gewinn von € " & höchsterGewinn1 & ", welcher um € " & DifferenzGewinngrößer & " höher ist, als der alte höchste Gewinn von € " & höchsterGewinn & ", welcher " & höchsterGewinnDatum & " war, bzw. ist er seit der letzten Aktualisierung " & DifferenzGewinnLetzterGewinn & " der letzte " & GewinnVerlust & String(1, vbNewLine) & _
"€ " & alterGewinn & ", welcher am " & alterWertDatum & " war." & String(1, vbNewLine) & _
"Der derzeitige Prozentsatz beträgt mit heutigem Tag " & alterProzentmitheutigemTag1 & " % " & String(1, vbNewLine) & _
"(" & DifferenzProzentLetzterProzent & " %).", vbInformation, "Achtung! © by Biggi & Tommy"
.Range("B8").Value = gewinn
.Range("B6").Value = prozent
.Range("B7").Value = prozentseitAbschluss
Else
If gewinn > .Range("e8").Value Then
.Range("e8").Value = gewinn
.Range("f8").Value = "am " & Date
höchsterGewinn1 = .Range("J8").Value
.Range("L9").Value = gewinn - höchsterGewinn
DifferenzGewinngrößer = .Range("M9").Value
.Range("A1").Value = gewinn - alterGewinn
DifferenzGewinnLetzterGewinn = .Range("B1").Value
.Range("A2").Value = prozent - alterProzentmitheutigemTag
DifferenzProzentLetzterProzent = .Range("B2").Value
.Range("A3").Value = prozentseitAbschluss - alterProzentseitAbschluss
DifferenzProzentseitAbschlussLetzterProzentseitAbschluss = .Range("B3").Value
alterProzentmitheutigemTag1 = Cells(7, 10)
alterProzentseitAbschluss1 = Cells(6, 10)
MsgBox "Neuer höchster Gewinn von € " & höchsterGewinn1 & ", welcher um € " & DifferenzGewinngrößer & " höher ist, als der alte höchste Gewinn von € " & höchsterGewinn & ", welcher " & höchsterGewinnDatum & " war, bzw. ist er seit der letzten Aktualisierung " & DifferenzGewinnLetzterGewinn & " der letzte " & GewinnVerlust & " € " & alterGewinn & ", welcher am " & alterWertDatum & " war." & String(1, vbNewLine) & _
"Der derzeitige Prozentsatz beträgt mit heutigem Tag " & alterProzentmitheutigemTag1 & " % (" & DifferenzProzentLetzterProzent & " %), bzw. " & alterProzentseitAbschluss1 & " % (" & DifferenzProzentseitAbschlussLetzterProzentseitAbschluss & " %) seit Abschluss.", vbInformation, "Achtung! © by Biggi & Tommy"
.Range("B8").Value = gewinn
.Range("B6").Value = prozent
.Range("B7").Value = prozentseitAbschluss
Else
If gewinn = .Range("e8").Value Then
.Range("e8").Value = gewinn
.Range("f8").Value = "am " & Date
höchsterGewinn1 = .Range("J8").Value
.Range("L9").Value = gewinn - höchsterGewinn
DifferenzGewinngrößer = .Range("M9").Value
.Range("A1").Value = gewinn - alterGewinn
DifferenzGewinnLetzterGewinn = .Range("B1").Value
.Range("A2").Value = prozent - .Range("B6").Value
DifferenzProzentLetzterProzent = .Range("B2").Value
.Range("A3").Value = prozentseitAbschluss - alterProzentseitAbschluss
DifferenzProzentseitAbschlussLetzterProzentseitAbschluss = .Range("B3").Value
alterProzentmitheutigemTag1 = Cells(7, 10)
alterProzentseitAbschluss1 = Cells(6, 10)
MsgBox "Der derzeitige " & GewinnVerlust1 & " € " & höchsterGewinn1 & " ist gleich hoch, wie der alte höchste Gewinn von € " & höchsterGewinn & ", welcher " & höchsterGewinnDatum & " war." & String(1, vbNewLine) & _
"Der derzeitige Prozentsatz beträgt mit heutigem Tag " & alterProzentmitheutigemTag1 & " % (" & DifferenzProzentLetzterProzent & " %), bzw. " & alterProzentseitAbschluss1 & " % (" & DifferenzProzentseitAbschlussLetzterProzentseitAbschluss & " %) seit Abschluss.", vbInformation, "Achtung! © by Biggi & Tommy"
.Range("B8").Value = gewinn
.Range("B6").Value = prozent
.Range("B7").Value = prozentseitAbschluss
End If
End If
End If
End If
If gewinn < .Range("e8").Value And höchsterGewinn = 0 Then
DatumgrößerGewinn = .Range("F8").Value
.Range("A1").Value = gewinn - alterGewinn
DifferenzGewinnLetzterGewinn = .Range("B1").Value
.Range("A2").Value = prozent - alterProzentmitheutigemTag
DifferenzProzentLetzterProzent = .Range("B2").Value
.Range("A3").Value = prozentseitAbschluss - alterProzentseitAbschluss
DifferenzProzentseitAbschlussLetzterProzentseitAbschluss = .Range("B3").Value
alterProzentmitheutigemTag1 = Cells(7, 10)
alterProzentseitAbschluss1 = Cells(6, 10)
MsgBox "Der derzeitige Verlust beträgt € " & Format(Range("$E$5"), "#,##0.00") & ", bzw. ist er seit der letzten Aktualisierung " & DifferenzGewinnLetzterGewinn & " der letzte " & GewinnVerlust & " € " & alterGewinn & ", welcher am " & alterWertDatum & " war." & String(1, vbNewLine) & _
"Der derzeitige Prozentsatz beträgt mit heutigem Tag " & alterProzentmitheutigemTag1 & " % " & String(1, vbNewLine) & _
"(" & DifferenzProzentLetzterProzent & " %), bzw. " & alterProzentseitAbschluss1 & " % (" & DifferenzProzentseitAbschlussLetzterProzentseitAbschluss & " %) seit Abschluss.", vbInformation, "Achtung! © by Biggi & Tommy"
.Range("B8").Value = gewinn
.Range("B6").Value = prozent
.Range("B7").Value = prozentseitAbschluss
Else
If gewinn < .Range("e8").Value Then
DatumgrößerGewinn = .Range("F8").Value
.Range("A1").Value = gewinn - alterGewinn
DifferenzGewinnLetzterGewinn = .Range("B1").Value
.Range("A2").Value = prozent - alterProzentmitheutigemTag
DifferenzProzentLetzterProzent = .Range("B2").Value
.Range("A3").Value = prozentseitAbschluss - alterProzentseitAbschluss
DifferenzProzentseitAbschlussLetzterProzentseitAbschluss = .Range("B3").Value
alterProzentmitheutigemTag1 = Cells(7, 10)
alterProzentseitAbschluss1 = Cells(6, 10)
MsgBox "Der derzeitige " & GewinnVerlust1 & " € " & Format(Range("$E$5"), "#,##0.00") & " beträgt um € " & DifferenzGewinnkleiner & " weniger, als der höchste Gewinn von € " & höchsterGewinn & ", welcher " & DatumgrößerGewinn & " war, bzw. ist er seit der letzten Aktualisierung " & DifferenzGewinnLetzterGewinn & " der letzte " & GewinnVerlust & " € " & alterGewinn & ", welcher am " & alterWertDatum & " war." & String(1, vbNewLine) & _
"Der derzeitige Prozentsatz beträgt mit heutigem Tag " & alterProzentmitheutigemTag1 & " % " & String(1, vbNewLine) & _
"(" & DifferenzProzentLetzterProzent & " %), bzw. " & alterProzentseitAbschluss1 & " % (" & DifferenzProzentseitAbschlussLetzterProzentseitAbschluss & " %) seit Abschluss.", vbInformation, "Achtung! © by Biggi & Tommy"
.Range("B8").Value = gewinn
.Range("B6").Value = prozent
.Range("B7").Value = prozentseitAbschluss
End If
End If
If .Range("E5").Value > 0 And .Range("E11").Value = "" Then
.Range("D11").Value = "niedrigster Gewinn"
.Range("E11").Value = .Range("E5").Value
.Range("F11").Value = "am " & Date
.Range("H11").Value = prozent
.Range("I11").Value = "% mit Stichtag " & Date
.Range("H12").Value = prozentseitAbschluss
.Range("I12").Value = "% am " & Date & " seit Abschluss"
End If
If .Range("E5").Value > 0 And .Range("E11").Value < .Range("E5").Value Then
Else
If .Range("E5") < 0 And .Range("E5").Value < alterWertGewinnVerlust Then
.Range("D11").Value = "höchster Verlust"
.Range("E11").Value = .Range("E5").Value
.Range("F11").Value = "am " & Date
.Range("H11").Value = prozent
.Range("I11").Value = "% mit Stichtag " & Date
.Range("H12").Value = prozentseitAbschluss
.Range("I12").Value = "% am " & Date & " seit Abschluss"
höchsterVerlustniedrigsterGewinnWert1 = .Range("E11")
.Range("A9").Value = höchsterVerlustniedrigsterGewinnWert1 - höchsterVerlustniedrigsterGewinnWert
DifferenzhöchsterVerlustniedrigsterGewinnWert = .Range("B9").Value
MsgBox "ACHTUNG: Dein Verlust wird immer höher. Dein neuer höchster Verlust beträgt € " & Format(höchsterVerlustniedrigsterGewinnWert1, "#,##0.00") & ", welcher um € " & DifferenzhöchsterVerlustniedrigsterGewinnWert & " höher ist, als dein letzter " & höchsterVerlustniedrigsterGewinn & " von " & String(1, vbNewLine) & _
"€ " & Format(höchsterVerlustniedrigsterGewinnWert, "#,##0.00") & ", welcher am " & höchsterVerlustniedrigsterGewinnDatum & " war."
.Range("G11").Value = Date
Else
If .Range("E5") > 0 And Range("E5").Value < alterWertGewinnVerlust Then
.Range("D11").Value = "niedrigster Gewinn"
.Range("E11").Value = .Range("E5").Value
.Range("F11").Value = "am " & Date
.Range("H11").Value = prozent
.Range("I11").Value = "% mit Stichtag " & Date
.Range("H12").Value = prozentseitAbschluss
.Range("I12").Value = "% am " & Date & " seit Abschluss"
höchsterVerlustniedrigsterGewinnWert1 = .Range("E11")
.Range("A9").Value = höchsterVerlustniedrigsterGewinnWert1 - höchsterVerlustniedrigsterGewinnWert
DifferenzhöchsterVerlustniedrigsterGewinnWert = .Range("B9").Value
MsgBox "ACHTUNG: Dein Gewinn wird immer weniger. Dein neuer niedrigster Gewinn beträgt € " & Format(höchsterVerlustniedrigsterGewinnWert1, "#,##0.00") & ", welcher um € " & DifferenzhöchsterVerlustniedrigsterGewinnWert & " weniger ist, als dein letzter niedrigster " & String(1, vbNewLine) & _
"Gewinn von € " & Format(höchsterVerlustniedrigsterGewinnWert, "#,##0.00") & ", welcher am " & höchsterVerlustniedrigsterGewinnDatum & " war."
.Range("G11").Value = Date
End If
End If
End If
If prozent > Range("h8").Value Then
.Range("h8").Value = prozent
.Range("i8").Value = "% mit Stichtag " & Date
höchsterProzent = .Range("J9").Value
DifferenzhöchsterProzentLetzterhöchsterProzent = .Range("B4")
MsgBox "Neuer höchster Prozentsatz von " & höchsterProzent & " % (" & DifferenzhöchsterProzentLetzterhöchsterProzent & " %)!", vbInformation, "Achtung! © by Biggi & Tommy"
End If
If prozentseitAbschluss > Range("h9").Value Then
.Range("h9").Value = prozentseitAbschluss
.Range("i9").Value = "% am " & Date & " seit Abschluss"
höchsterProzentseitAbschluss = .Range("J10").Value
DifferenzhöchsterProzentseitAbschlussLetzterhöchsterProzentseitAbschluss = .Range("B5").Value
MsgBox "Neuer höchster Prozentsatz seit Abschluss von " & höchsterProzentseitAbschluss & " % (" & DifferenzhöchsterProzentseitAbschlussLetzterhöchsterProzentseitAbschluss & " %)!", vbInformation, "Achtung! © by Biggi & Tommy"
End If
End With
Sheets("Übersicht").Activate
End Sub
Excel Version 2016