Ich habe ein Liste in der in Spalte B Zinssätze ohen das %-Zeichen (Spalte enthält nur Zinssätze oder nichts) enthalten sind. Ursprünglich ist der Zinssatz das Ergebnis einer Formel. Um die Darstellung zu verbessern, frage ich in der Formel ab, ob der Zinssatz 2-stellig (z.B. 10.5 oder 10.25 oder 10.375) oder einstellig ist (nur Vorkommastellen sind in dieser Sache relevant).
Bei einstelligen Zinssätzen werden zwei Leerstellen vorangestellt, damit es optisch gut aussieht, wenn sowohl 1- als auch 2-stellige Zinssätze vorhanden sind. Eine rechtsbündige Anordnung ist nicht möglich, da die Zinssätze 3 Nachkommastellen haben, Nullen am Schluss jedoch nicht gezeigt werden.
Bei der Endverarbeitung dieser Tabelle ersetze ich unter anderem die Formeln durch Werte. Deshalb verschwinden die in der Formel enthaltenen Leerstellen und alle Zahlen werden linksbündig angezeigt.
Manuell kann ich dies wie folgt korrigieren:
- Formatierung der Spalte B als Text
- bei einstelligen Zinssätzen zwei Leerstellen vorneanstellen.
Aufgrund der Anzahl Positionen möchte ich dies nicht manuell machen.
Kann mir jemand eine Hilfestellung geben, wie ich dies mit VBA mache?
Vielen Dank, Peter
Sub Prozente()
dim lngStart as long, lngEnde as long, lngSpalte as long
with worksheets("Inventar")
lngStart = 6 'Beginn bei Zeile 6
lngSpalte = 2 'Spalte B
'Ermittlung letzte Zeile mit Eintrag in Spalte B
lngEnde = .Cells(Rows.Count, lngSpalte).End(xlUp).Row
SPALTE B mit "TEXT"-Format versehen
ab B6 SCHLAUFE MIT FOLGENDER AKTION:
wenn Zahl in aktueller Zelle nur eine Vorkommastelle hat, dann zwei Leerstellen vorneanstellen
sonst keine Aktion und nächste anwählen
Aktion beendigt, wenn Zeile lngEnde abgearbeitet ist
End Sub