Thema Datum  Von Nutzer Rating
Antwort
Rot String in Double konvertieren
20.11.2019 08:07:53 Rob
NotSolved
20.11.2019 08:26:09 Gast97863
NotSolved
25.11.2019 08:44:05 Steffen Sp.
NotSolved

Ansicht des Beitrags:
Von:
Rob
Datum:
20.11.2019 08:07:53
Views:
762
Rating: Antwort:
  Ja
Thema:
String in Double konvertieren

Hallo zusammen,

ich weiß, das Thema wurde hier bestimmt schon hunterte Male durchgekaut, aber ich weiß einfach nicht mehr weiter.
Die durchwegs vielversprechenden und einleuchtenden Lösungen, die hier und in anderen Foren angeboten werden hatten nicht den gewünschten Effekt. 

Mit Val()  und CDbl() komme ich nicht weiter...

Die Problemstellung: ich habe in der Spalte R zweistufige Rabatte, in der Form

-10% / -16,11%

Jetzt hätte ich gerne jeden der Rabatte als Double-Variable mit der ich weiterrechnen kann. Das funktioniert auch wenn ich die Variablen einzeln ins Tabellenblatt schreibe, habe ich jeweils eine Zahl mit der ich weiterrechnen könnte. 
Wenn ich aber im Script versuche die beiden beispielsweise zu addieren, giebts den Laufzeitfehler Typenunverträglichkeit.

Help would be highly appreciated!

 

Sub RabatteAlsZahl()

Dim LRow As Long
Dim i As Integer
Dim Start1 As Integer
Dim Start2 As Integer
Dim Anz As Integer
Dim rngZelle As Range
Dim Rabatt1 As String
Dim Rabatt2 As String


LRow = Cells(Rows.Count, 1).End(xlUp).Row


'Rabatt
For Each rngZelle In Range("R2:R" & LRow)
    Anz = Len(rngZelle) - Len(Replace(rngZelle, "/", ""))
    Rabatt1 = ""
    Rabatt2 = ""

    For i = 1 To Anz
        Start1 = WorksheetFunction.Find("#", WorksheetFunction.Substitute(rngZelle, "-", "#", i))
        Rabatt1 = Rabatt1 & Mid(rngZelle, Start1, 3)
        
        Start2 = WorksheetFunction.Find("#", WorksheetFunction.Substitute(rngZelle, "/", "#", i))
        Rabatt2 = Rabatt2 & Mid(rngZelle, Start2 + 2, 6)
        Rabatt2 = Replace(Rabatt2, ",", ".")
        Rabatt2 = Rabatt2
    Next i
       
rngZelle.Offset(0, 1) = Rabatt1 + Rabatt2

Next rngZelle

End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot String in Double konvertieren
20.11.2019 08:07:53 Rob
NotSolved
20.11.2019 08:26:09 Gast97863
NotSolved
25.11.2019 08:44:05 Steffen Sp.
NotSolved