Supportnet / Forum / Tabellenkalkulation
Leerzeilen zwischen nicht aufeinanderfolgenden Werten einfügen.
Frage
Hallo,
Ich habe eine (sortierte) Tabelle in der jede Zeile mit einem eindeutigen Wert beginnt (werte von A01 bis C50, wobei in der Zeile 1 der Wert A01 steht). Allerdings gibt es werte die in der Tabelle nicht vorkommen (z.B. A02 oder A05). Jetzt möchte ich das die zwei Ziffern des Ersten Wertes jeweils mit der Zeilennummer von Excel übereinstimmen, sprich A01 soll in zeile 1 stehen, B35 in Zeile 135, C21 in Zeile 221 und so weiter. Die Zeilen die keinen passenden Datensatz als partner haben sollen jeweils leer bleiben. Sprich:
[code]
Zeile | Wert
1 A01
2
3 A03
4 A04
5
6 A06
.
.
.
[/code]
Ist das möglich? ich bin bereit zusätzliche Zählspalten etc. einzufügen und mir ist vollkommen klar das das nur über ein Makro zu machen ist. Leider bin ich in VBA für so was nicht fitt genug.
Ich hoffe die erlärung war verständlich, Rückfragen werden beantwortet.
Schon mal vielen Dank für die Hilfe...
mfg
SMT.
Antwort 1 von Saarbauer
Hallo,
mit dem Makro ist es kein Problem, aber wie sehen deie Daten aus und wo stehen die?
Du mochtest es wohl etwa so haben, dass in A1 z.B. 101 steht
in A3 103, B4 204 und in C65 365, wenn ich es richtig verstanden habe.
Gruß
Helmut
mit dem Makro ist es kein Problem, aber wie sehen deie Daten aus und wo stehen die?
Du mochtest es wohl etwa so haben, dass in A1 z.B. 101 steht
in A3 103, B4 204 und in C65 365, wenn ich es richtig verstanden habe.
Gruß
Helmut
Antwort 2 von SMT
nein, leider nicht, die Werte in den Zellen haben nichts mit dem Spaltennamen zu tun, nur mit der Zeilennummer.
Ich habe ein datenblatt in dem in der Spalte A aufsteigend die werte A01 bis C50 stehen und ich möchte das Zeilen die keinen dazupassenden werte haben (wie die Zeile 2 zu der es keinen wert A02 gibt) mit einer leerzeile gefüllt werden.
Ich habe ein datenblatt in dem in der Spalte A aufsteigend die werte A01 bis C50 stehen und ich möchte das Zeilen die keinen dazupassenden werte haben (wie die Zeile 2 zu der es keinen wert A02 gibt) mit einer leerzeile gefüllt werden.
Antwort 3 von Saarbauer
Hallo,
versuch es mal hiermit
Gruß
Helmut
versuch es mal hiermit
Sub tabellet_bereinigen()
Columns("A:A").Select
Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
For i = Range("A65536").End(xlUp).Row To 2 Step -1
y = (Asc(Left(Range("A" & i).Value, 1)) - 65) * 100 + Mid(Range("A" & i).Value, 2, 10)
Range("A" & y).Value = Range("A" & i).Value
If i <> y Then Range("A" & i).Value = ""
Next i
End SubGruß
Helmut

