Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1656to1660
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Werte werden nicht richtig berechnet
08.11.2018 14:11:41
Fred
Hallo zusammen
Ich habe mal wieder ein Problem und kann es nicht lösen.
ich übergebe aus einer Userform Werte an eine Tabelle,was auch alles funktioniert leider werden die Ergebnisse in der Zelle nicht richtig angezeigt. Wenn ich mit Kommastelle rechne, Egal wie ich die Zelle auch Formatiere.
Rechne ich mit ganzen Zahlen läufts ,sobald eine Kommastelle dazu kommt funktioniert es leider nicht mehr
Es geht um den Bereich K5 bis X5 in der Tabelle.
Ich hoffe Ihr könnt mir mal wieder helfen.
https://www.herber.de/bbs/user/125266.xls
Grüße Fred

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Werte werden nicht richtig berechnet
08.11.2018 14:33:13
Werner
Hallo Fred,
du übergibst Text in die Tabelle und keine Zahlen. Geh mal in die Zelle mit deiner "Kommazahl" und gib die nochmals von Hand ein.
.Offset(, 1).Value = CDbl(TextBox2) 
Gruß Werner
AW: Werte werden nicht richtig berechnet
08.11.2018 14:58:28
Fred
Hallo Werner
Danke für die Schnelle antwort.
Da ich nicht alle Textboxen mit Werten fülle sind manche auch leer und schon Meckert der Debugger rumm.Unten steht mal der geänderte Code. Wie könnte ich das denn abstellen damit er die leeren TextBoxen ignoriert?

Private Sub Daten_übernehmen_Click()
With Tabelle21 ' absoluter Bezug zu definierter Tabelle
With .Cells(.Rows.Count, 1).End(xlUp).Offset(1) ' Bezug zur 1. freien Zeile in Spalte A
.Value = CDate(TextBox1.Text) ' Wertübergabe an Zelle in Spalte A
.Offset(, 1).Value = CDbl(TextBox2.Text)  ' Wertübergabe an Zelle in Spalte B
.Offset(, 2).Value = CDbl(TextBox3.Text)
.Offset(, 3).Value = CDbl(TextBox4.Text)
.Offset(, 4).Value = CDbl(TextBox5.Text)
.Offset(, 5).Value = CDbl(TextBox6.Text)
.Offset(, 9).Value = CDate(TextBox7.Text)
.Offset(, 10).Value = CDbl(TextBox8.Text)
.Offset(, 11).Value = CDbl(TextBox9.Text)
.Offset(, 12).Value = CDbl(TextBox10.Text)
.Offset(, 13).Value = CDbl(TextBox11.Text)
.Offset(, 14).Value = CDbl(TextBox12.Text)
.Offset(, 18).Value = CDate(TextBox13.Text)
.Offset(, 19).Value = CDbl(TextBox14.Text)
.Offset(, 20).Value = CDbl(TextBox15.Text)
.Offset(, 21).Value = CDbl(TextBox16.Text)
.Offset(, 22).Value = CDbl(TextBox17.Text)
.Offset(, 23).Value = CDbl(TextBox18.Text)
End With
End With
Grüße Fred
Anzeige
AW: Werte werden nicht richtig berechnet
08.11.2018 15:19:49
Luschi
Hallo Fred,
beim Auslesen von Textboxen muß man sich schon ein bischen mehr Mühe geben und nicht blindlinks versuchen, Textbox-Werte in Zahlen umzuwandeln. Wenn man keine Vorkehrungen trifft, daß nur Zahlen reingeschrieben werden können, so muß man schon damit rechnen, daß Buchstaben (Großes O statt Zahl 0 oder kleines l statt Zahl 1 oder eben kein, ein oder mehrere Leerzeichen drinstehen.
Google kennt da viele, viele, und noch mehr Lösungsvorschläge, wann man nach diesen Stichworten sucht:
'vba textbox nur zahlen und komma zulassen'
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Werte werden nicht richtig berechnet
08.11.2018 15:20:14
Werner
Hallo Fred,
teste mal:
Private Sub Daten_übernehmen_Click()
Dim i As Long
With Tabelle21 ' absoluter Bezug zu definierter Tabelle
With .Cells(.Rows.Count, 1).End(xlUp).Offset(1) ' Bezug zur 1. freien Zeile in Spalte A
If IsNumeric(Me.TextBox1) Then
.Value = CDate(Me.TextBox1.Text) ' Wertübergabe an Zelle in Spalte A
End If
For i = 2 To 6
If IsNumeric(Me.Controls("Textbox" & CStr(i))) Then
.Offset(, i - 1) = CDbl(Me.Controls("Textbox" & CStr(i)))
End If
Next i
For i = 7 To 12
If IsNumeric(Me.Controls("Textbox" & CStr(i))) Then
.Offset(, i + 2) = CDbl(Me.Controls("Textbox" & CStr(i)))
End If
Next i
For i = 13 To 18
If IsNumeric(Me.Controls("Textbox" & CStr(i))) Then
.Offset(, i + 5) = CDbl(Me.Controls("Textbox" & CStr(i)))
End If
Next i
End With
End With
End Sub
Gruß Werner
Anzeige
AW: Werte werden nicht richtig berechnet
08.11.2018 15:42:06
Fred
Hallo Werner
Das funktioniert schon echt super es gibt nur noch ein kleines Problem
nicht nur TextBox1 enthält ein Datum sondern auch TextBox7 und TextBox13.
könntest Du das vieleicht noch mal abändern?
Grüße Fred
AW: Werte werden nicht richtig berechnet
08.11.2018 15:47:18
Luschi
Hallo Fred,
und was hindert Dich daran, bei Textboxen mit Datumswerten die Funktion IsDate() zu verwenden statt IsNumeric().
Außerdem wirst Du schnell feststellen, daß die Kommaproblematik von Werner noch nicht berü _ cksichtigt wurde:

Sub testKommastelle()
Dim s As String
s = "12.1"
Debug.Print IsNumeric(s)  'Wahr
Debug.Print CDbl(s)       'Ergebnis: 121
s = "12,1"
Debug.Print IsNumeric(s)  'Wahr
Debug.Print CDbl(s)       'Ergebnis: 12,1
s = "12.1.1"
Debug.Print IsNumeric(s)  'Wahr
Debug.Print CDbl(s)       'Ergebnis: 12,1
s = "12,1.1"              'Wahr
Debug.Print IsNumeric(s)  'Ergebnis: 12,11
Debug.Print CDbl(s)
s = "12,1,1"
Debug.Print IsNumeric(s)  'Falsch
Debug.Print CDbl(s)       'Fehler 13
End Sub
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Werte werden nicht richtig berechnet
08.11.2018 15:58:58
Fred
Hallo Luschi
Danke für Deine Antwort.
Der Code von Werner funktioniert sehr gut es werden nur 2 TextBoxen falsch übergeben Die Berechnung mit Kommastelle funktioniert, so aber über die Formatierung der Zelle. da ich ich nur Leihe im Bereich VBA bin kann ich mit Deinem Code leider nichts anfangen .
Grüße Fred
AW: Werte werden nicht richtig berechnet
08.11.2018 19:12:42
Werner
Hallo Fred,
mal ne bescheidene Frage:
Du stellst immer die letzte belegte Zeile/Zelle bzw. die erste freie Zelle in Spalte A fest. Das hat ja dann zur Folge, dass die Daten in den Tabellenbereichen J:O bzw. S:X an Spalte A ausgerichtet sind.
Trägst du z.B. nur 5 x etwas im Tabellenbereich A:F ein, dann hat das zur Folge, dass der erste Eintrag in den anderen beiden Tabellenbereichen erst ab Zeile 15 erfolgt.
Ist das denn so gewollt?
Gruß Werner
Anzeige
AW: Werte werden nicht richtig berechnet
09.11.2018 18:37:21
Sepp
Hallo Fred,
schau mal in den Optionen nach und setze die mit 1 gekennzeichnete Option und nimm die mit 2 gekennzeichnete raus.
Userbild
 ABCDEF
1Gruß Sepp
2
3

Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige