Windows Forms Taschenrechner: Komma-Problem?

Hallo ich erstelle derzeit einen Taschenrechner in Windows Forms.

Ich bin eigentlich fertig mit dem Taschenrechner, bin aber leider jetzt am Schluss auf ein Problem gestoßen, was ich nicht gelöst bekomme:

Wenn ich als Aufgabe 12,4 + 3 eingebe, kommt 127 raus. Ich verstehe aber einfach nicht warum. Es hat die ganze Zeit funktioniert und plötzlich nicht mehr. Vielleicht habe ich ja unbewusst etwas geändert.

Hier der Codeabschnitt, der etwas mit dem Komma zu tun hat (ich kann leider nicht den gesamten Code einfügen, da 500 Zeilen -> erweiterter Taschenrechner):

Imports System.Globalization
Imports System.Text.RegularExpressions

Public Class Form1
  Public Property zahl As String = ""
  Public Property calc As String = ""
  Dim input As String = ""

  Private Function GetDezimalTrennzeichen() As String
    Return CultureInfo.CurrentCulture.NumberFormat.NumberDecimalSeparator
  End Function

  Private Sub bcomma_Click(sender As Object, e As EventArgs) Handles bcomma.Click
    tb.Text += GetDezimalTrennzeichen()
  End Sub

  Private Sub bsolve_Click(sender As Object, e As EventArgs) Handles bsolve.Click
    ' ...
    Dim input As String = tb.Text
    input = input.Replace(",", ".")
    ' ...
  End Sub

  Private Function EvaluateExpression(expression As String) As Double
    ' ...
    Dim sqrtRegex As New Regex("sqrt\(([^()]+)\)")

    While sqrtRegex.IsMatch(expression)
      input = sqrtRegex.Replace(input, Function(match)
      Dim innerExpression As String = match.Groups(1).Value
      Dim result As Double = EvaluateExpression(innerExpression)

      If result >= 0 Then
        Return Math.Sqrt(result)
      Else
        ' Wenn das Ergebnis negativ ist, wird eine Exception ausgelöst
        Throw New ArithmeticException("Negatives Ergebnis")
      End If
  End Function)
  End While
  ' ...
End Function

Danke schon einmal.

Visual Basic, Taschenrechner, Visual Studio, Windows Forms
Excel-Code für Mehrfachauswahl in Dropdown-Listen?

Hallo zusammen,

Ich versuche gerade ein Excel-Dokument zu erstellen, bei dem eine Mehrfachauswahl aus Dropdown-Listen möglich ist. Das heißt aus einer Liste sollte es möglich sein mehrere Werte anzuwählen. Das habe ich auch mit dem untenstehenden VisualBasic-Code gemeistert. Allerdings habe ich erstens das Problem, dass auch eine Mehrfachauswahl des immer gleichen Wertes möglich ist. Theoretisch könnte also in einer Zelle x-mal derselbe Werte auftauchen. Dies soll natürlich nicht möglich sein. Bei Doppelauswahl desselben Wertes soll dieser aus der Zelle wieder verschwinden.

Mein zweites Problem ist, dass ich bislang nur 2 zwei Dropdown-Listen mit Mehrfachauswahl eingefügt bekomme. Sobald ich eine dritte Spalte versuche zu implementieren, bekomme ich eine Fehlermeldung für meinen Code.

Dadurch, dass ich mich mit dem Ganzen nicht so wirklich auskenne, wäre es sehr nett, wenn mir jemand helfen könnte.

Danke!

 

Bisheriger Code:

 

Private Sub Worksheet_Change(ByVal Target As Range)

** Mehrfachauswahl über DropDown-Liste

'** Einfügen im Code-Container des betreffenden Arbeitsblattes

 

'** Dimensionierung der Variablen

Dim rngDV As Range

Dim wert_old As String

Dim wertnew As String

 

'** Errorhandling

On Error GoTo Errorhandling

 

'** Mehrfachauswahl im definierten Bereich "Abteilungen" und "Themen" (Bsp. J2:J2000, I2:I2000) durchführen

If Not Application.Intersect(Target, Range("J2:J2000", "I2:I2000")) Is Nothing Then

 

 '**Range definieren

 Set rngDV = Target.SpecialCells(xlCellTypeAllValidation)

 If rngDV Is Nothing Then GoTo Errorhandling

  

 '** Prüfen, ob eine gültige Zelle ausgewählt wurde und Werte eintragen

 If Not Application.Intersect(Target, rngDV) Is Nothing Then

   Application.EnableEvents = False

   wertnew = Target.Value

   Application.Undo

   wertold = Target.Value

   Target.Value = wertnew

   If wertold <> "" Then

     If wertnew <> "" Then

       Target.Value = wertold & ", " & wertnew

     End If

   End If

 End If

 Application.EnableEvents = True

End If

 

Errorhandling:

Application.EnableEvents = True

End Sub

Visual Basic, Microsoft Excel, VBA, Dropdownliste
Microsoft Excel | Diabook. > Neue Überarbeitung/Hilfe (VBA)?

Guten Abend zusammen.

Bevor ich zum offiziellen Thema komme nochmals ein Vorwort auf der Grundlage eines Beitrages der sinnfrei gelöscht wurde.

Vorwort:

Die Frage dient nicht dafür um hier etwas zu verkaufen sondern dazu um mir im Bereich Office/Excel weiterzuhelfen. Das Diabolic Projekt ist ein Privates und von mir als Besitzer und Eigentümer erstelltes Projekt. Ebenfalls habe ich die AGB von gutefrage.net zur Kenntnis genommen und stimme diesen hiermit Schriftlich zu.

Der letzte Beitrag wurde wegen verdacht auf Verkauf entfernt obwohl ich das HIER und im anderen Beitrag deutlich erwähnt habe. Ich möchte hier nichts Verkaufen.

| Um was handelt es sich nun?

Ich bin selber Diabetiker Typ 1 und wollte ein erstmaliges Projekt erstellen um mein Diabetes auch am Computer (in Excel) Managen zu können. Dazu habe ich in der Vergangenheit auch schon paar Fragen gestellt.

Nun habe ich eine Zeit lang darüber Nachgedacht und bin zum Entschluss gekommen alles "Einheitlich" statt einzeln zu machen. Diabook, Insulinrechner, Nährwertrechner waren noch bis vor ein paar Tagen einzelne Programme in Microsoft Excel Dokument Mappen. Ich habe überlegt und mir viel dann etwas auf. Aufgrund dessen dass ich die Dinge mache um das Leben mit Diabetes einfacher zu machen dachte ich mir: Okay. Dann werde ich doch alles in einer Mappe verarbeiten da die Einzelnen Mappen immer aufwendig sind.

Ich Persönlich verwende schon lange Zeit eine App die vieles miteinander vereint. So soll es auch mit dem was ich vor habe werden.

| Weiteres:

Ich möchte das alles im Prinzip erneuern. Ich habe leider nur wenig bis minimale Kenntnisse im Bereich "Microsoft Excel" und habe schon paar Ideen die ich nur zum Teil umsetzen kann weil mir dafür das Wissen & Erfahrung fehlt und ich deshalb diesen Beitrag erstelle um danach zu Fragen.

| Vorstellung & Idee/n:

Meine Ideen und Vorstellungen in diesem Projekt sind naja irgendwie zu Groß weshalb ich bezweifle das es möglich sein wird alles in Excel umsetzten zu können.

Ich habe mich schon bei YouTube umgesehen und kam leider zu keinem Video das mir dass zeigen würde was ich so bräuchte. Ich hätte aber gerne Folgendes:

  • Startseite: Erweiterungen um in der linken Leiste alles ein und zuklappen zu können. Dies ebenfalls beim Nährwertrechner mit mehreren Mappen um dort verschiedene Kategorien für Lebensmittel anzulegen. Auch beim nachkommenden Rezeptrechner um dort ebenfalls Kategorien anlegen zu können.
  • Favoriten: Wichtig beim Nährwert/Rezeptrechner um Lebensmittel oder Rezepte schneller zu finden.
  • Mappen in Mappen: Ich hätte außerdem gerne die Funktion das ich zb. in der Mappe Nährwertrechner weitere Mappen erstellen kann un das überall.
  • Nährwertrechner(Suche): Ich hätte außerdem gerne das man oben eine Leiste hat um alle Lebensmittel und Rezepte zu finden. Diese sollen dann in einer Liste dort oder dann im Nährwertrechner angezeigt werden. Auch ins Tagebuch übertragbar sein.

Es ist zu viel. Bräuchte man dafür VBA oder geht das ohne? Danke im Voraus! :)

Bild zum Beitrag
PC, Computer, Software, Windows, Microsoft, Office, Visual Basic, Microsoft Excel, Technik, IT, VBA

Meistgelesene Fragen zum Thema Visual Basic