Probleme mit , und .

  • VB6

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von Marcus Gräfe.

    Probleme mit , und .

    Hallo,
    ich bin*s wieder..
    Ich Programmiere grade ein Tool was aus 9 Einzugebenden Textboxen sich zwischenwerte intern ausrechnet und sie danch an 4 Textboxen ausgibt.

    Jetzt mein Problem, alle Werte sind ohne Koma/Punkt nur Eine. Bei mir zu hause muss ich den Wert mit Koma eingeben (französischer Win) und auf der Arbeit (englischer Win) mit einem Punkt das das Ergebniss irgendwie stimmt.

    Ich hab den Code dabeigepaste, lacht bitte nicht über die zusammensetzung des Codes weil es war mein ersten Tool und das mit Copy and Paste aus dem Web.

    Es würde mich sehr freuen wenn einer mir Rat geben könnte ...

    Danke im Voraus und schöne grüsse aus Luxemburg...

    Miguel



    Code:

    Private Sub Command1_Click()

    Zwsbm = CStr(CDbl(Text3.Text) * CDbl(Text4.Text))
    Zwsgbm = CStr(CDbl(Text7.Text) / CDbl(Zwsbm))
    Zslange = CStr(CDbl(Zwsgbm) * 1000)
    Anzahlderrollenpro = CStr(CDbl(Zslange) / CDbl(Text5.Text))
    Zeitprorollesek = CStr(CDbl(Anzahlderrollenpro) * CDbl(Text8.Text))
    Zeitpromin = CStr(CDbl(Zeitprorollesek) / 60)
    RolleMitWe = CStr(CDbl(Zeitpromin) + CDbl(Text2.Text))
    AnzahlderWe = CStr(CDbl(Text1.Text) \ CDbl(RolleMitWe))
    Text9.Text = CStr(CDbl(AnzahlderWe))

    DauerWe = CStr(CDbl(AnzahlderWe) * CDbl(Text2.Text))

    Text10.Text = CStr(CDbl(DauerWe))

    Restzeit = CStr(CDbl(Text1.Text) - CDbl(DauerWe))

    Text11.Text = CStr(CDbl(Restzeit))

    Restzeitsek = CStr(CDbl(Restzeit) * 60)

    GRollenzahl = CStr(CDbl(Restzeitsek) \ CDbl(Text8.Text))

    GRollenzahlFinal = CStr(CDbl(GRollenzahl) * CDbl(Text6.Text))

    Text12.Text = CStr(CDbl(GRollenzahlFinal))

    End Sub
    Also zunächst einmal kannst du dir das "CStr" bis auf vier Stellen ("TextX.Text") sparen, streng genommen sogar überall, aber schaden kann es nicht.

    CDbl beachtet nunmal die Ländereinstellung, daher muss man das Dezimaltrennzeichen so eingeben, wie in der entsprechenden Sprache üblich.

    Du könntest sowas machen:

    Visual Basic-Quellcode

    1. CDbl(Replace(Text4.Text, ",", Format$(0,".")))


    Das ersetzt das Komma durch das benötige Dezimaltrennzeichen.
    Besucht auch mein anderes Forum:
    Das Amateurfilm-Forum

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „Marcus Gräfe“ ()