Hallo,
ich versuche in vba Daten aus einer Quelle zu formatieren und in eine neue Tabelle zu speichern. Leider klappt die Formatierung noch nicht ganz. Kennt sich jemand damit aus ? Die zu verarbeitenden Daten haben machmal 3 Nachkommastellen und kommen von der Quelle mit einem 1000 er Punkt. Das lässt sich nicht vermeiden. Ziel ist es, die Werte mit 2 Nachkommastellen sauber zu formatieren
Das ist die Ausgangstabelle
Bezeichnung |
Wert |
Menge |
Kosten A |
Bezeichn |
KostenC |
xyz |
20.000,00 |
2.000,000 |
23,85 |
avc |
500,36 |
abc |
15.000,55 |
2.000,550 |
17,23 |
avc |
200,00 |
Das hier ist mein bisheriger Code:
1 2 3 4 5 6 7 8 | For EachColumn = 2 To 5
If EachColumn <> 4 Then
For EachRow = 2 To LastdownlDataRow
If InStr(Sheets( "downlData" ).Cells(EachRow, EachColumn).Value, "," ) = 0 Then
If Not (Right(Sheets( "downlData" ).Cells(EachRow, EachColumn).Value, 3) <> "000" And Right(Sheets( "downlData" ).Cells(EachRow, EachColumn).Value, 2) = "00" ) Then
Sheets( "downlData" ).Cells(EachRow, EachColumn).Value = Sheets( "downlData" ).Cells(EachRow, EachColumn).Value / 1000
End If
End If .....
|
Das kommt bisher an:
Bezeich |
Wert |
Menge |
KostenA |
KostenC |
xyc |
20 |
2000 |
23,85 |
500,36 |
abc |
15000,55 |
2000550 |
17,23 |
200,00 |
Immer wenn 3 Nachkommastellen sind soll der Wert durch 1000 dividiert werden, was nur manchmal klappt. Bei 2 Nachkommastellen, die auf 00 lauten soll eigentlich nicht geteilt werden. Wie kann man das lösen ?
|