Thema Datum  Von Nutzer Rating
Antwort
07.10.2017 22:07:54 Stefan
Solved
Blau Dateityp ändern: String-Double (bzw. Währung)
08.10.2017 07:28:51 Werner
NotSolved
08.10.2017 08:35:13 jörg
NotSolved
08.10.2017 10:44:16 Stefan
NotSolved
08.10.2017 10:54:51 Gast18899
NotSolved
08.10.2017 11:11:49 Gast94618
NotSolved
08.10.2017 11:33:18 Werner
NotSolved

Ansicht des Beitrags:
Von:
Werner
Datum:
08.10.2017 07:28:51
Views:
629
Rating: Antwort:
  Ja
Thema:
Dateityp ändern: String-Double (bzw. Währung)

Hallo Stefan,

versuch mal:

Option Explicit

Sub Andromoney_konvertieren()
Dim loLetzte As Long, raBereich As Range, raZelle As Range

Application.ScreenUpdating = False

With Worksheets("Tabelle1") 'Blattnamen anpassen
    'letzte Zeile Spalte A ermitteln
    loLetzte = .Cells(.Rows.Count, 1).End(xlUp).Row
    'Bereich von A1 bis A letzte belegte Zelle definieren
    Set raBereich = .Range(.Cells(1, 1), .Cells(loLetzte, 1))

    'Prüfung ob Daten in Spalte A vorhanden
    If loLetzte = 1 And IsEmpty(.Cells(1, 1)) Then
        MsgBox "Keine Daten in Spalte A"
        Exit Sub
    End If
    
    'Text trennen
    raBereich.TextToColumns DataType:=xlDelimited, _
    TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
    Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo:= _
    Array(Array(1, 1), Array(2, 1), Array(3, 2), Array(4, 2), Array(5, 2), Array(6, 1), _
    Array(7, 2), Array(8, 2), Array(9, 2), Array(10, 2), Array(11, 2), Array(12, 2), Array(13, 2) _
    , Array(14, 2)), TrailingMinusNumbers:=True
 
    'Punkte durch Komma ersetzen in Beträgen
    loLetzte = .Cells(.Rows.Count, 3).End(xlUp).Row
    Set raBereich = .Range(.Cells(1, 3), .Cells(loLetzte, 3))
    raBereich.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
    SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
    ReplaceFormat:=False
 
    'Format der Währung ändern        (Text->Währung)
    For Each raZelle In raBereich
        raZelle = CDbl(raZelle)
    Next raZelle
    .Columns("C:C").NumberFormat = "#,##0.00 $"
End With
  
Set raBereich = Nothing
Application.ScreenUpdating = True
End Sub

 

Gruß Werner


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
07.10.2017 22:07:54 Stefan
Solved
Blau Dateityp ändern: String-Double (bzw. Währung)
08.10.2017 07:28:51 Werner
NotSolved
08.10.2017 08:35:13 jörg
NotSolved
08.10.2017 10:44:16 Stefan
NotSolved
08.10.2017 10:54:51 Gast18899
NotSolved
08.10.2017 11:11:49 Gast94618
NotSolved
08.10.2017 11:33:18 Werner
NotSolved