Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Tabelle neu organisieren, Spalte einfügen
#1
Guten Morgen ihr Cleveren,
ich muss eine Tabelle umsortieren. Im Prizip habe ich eine Lösung gefunden, die auch funktioniert. Ich verwende ein zweites Tabellenblatt als Hilfe, das ich nach dem Sortieren wieder lösche. Es sind 100 Zeilen in der alten Tabelle und dann 50 Zeilen in der neuen Tabelle.

Das Sortieren müßte auch auf demselben Tabellenblatt gehen. Hat jemand eine Lösung dafür?

Alte Tabelle
1. Zeile          A C D E
2. Zeile          B
3. Zeile          F I J K
5. Zeile          G                 usw  (Jeder Buchstabe eine Zelle)

Neue Tabelle
1. Zeile          A B C D E
2. Zeile          F G I J K
3. Zeile        
5. Zeile          G                 usw

Meine Idee wäre eine Schleife, in der der Schleifenzähler im Zellbezug verwendet wird. Leider kann ich mangels Kenntnisse die VBA Syntax dafür nicht aufschreiben. Als kleine Erweiterung der Aufgabenstellung wäre top, wenn in jedem Schritt eine Abfrage erfolgt, ob die nächste Zelle in Spalte A leer ist. Falls ja, soll die Schleife abgebrochen werden.

Danke für eure Hilfe und schönen Tag  Huh ,
Joachim
Antworten Top
#2
Hallo,

so wirklich verstanden habe ich das nicht. Zeige doch mal eine Beispieltabelle.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Antworten Top
#3

.xlsx   Test alte Tabelle.xlsx (Größe: 8,79 KB / Downloads: 6)

Die Form der alten Tabelle ist angehängt, die neue sieht dann entsprechend aus
Grüße
Antworten Top
#4
Hallo,

das Muster ist immer das gleiche?
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Antworten Top
#5
Ja, immer das gleiche,... 100 Zeilen in der alten Tabelle. Der Wert aus A2 soll B1 werden, A4 soll B2 werden, usw. Es muss also in der neuen Tabelle für B eine neue Spalte eingefugt werden. In der neuen Tabelle sind dann 50 Zeilen übrig. Ist das nun klar?
Grüsse
Antworten Top
#6
In meiner ersten Anfrage ist leider ein kleiner Fehler,.....   in der neuen Tabelle darf in der 5. Zeile kein G stehen, sorry
Antworten Top
#7
hallo zusammen,
jetzt habe ich mal den Makro Recorder für drei Werte laufen lassen. Kann mir bitte jemand das so ändern, dass die Zellen und Zeilen jeweils durch einen Schleifenzähler (i von 1 bis 50) adressiert werden?

Sub Test()
'
' WKN Makro
'
' Tastenkombination: Strg+w
'
    Columns("B:B").Select
    Selection.Insert Shift:=xlToRight
   
 
    Range("A2").Select
    Selection.Cut Destination:=Range("B1")
    Rows("2:2").Select
    Selection.Delete Shift:=xlUp
    Range("A3").Select
    Selection.Cut Destination:=Range("B2")
    Rows("3:3").Select
    Selection.Delete Shift:=xlUp
    Range("A4").Select
    Selection.Cut Destination:=Range("B3")
    Rows("4:4").Select
    Selection.Delete Shift:=xlUp
    Range("A5").Select
   
 ' usw

End Sub

Wie schon vorher erwähnt, wäre eine Abfrage toll, ob in Spalte A eine leere Zelle auftaucht und die Schleife dann abgebrochen wird. Kann mit bitte jemand helfen?
Danke und Grüße
Joachim
Antworten Top
#8
Hallo Joachim,
Sub Makro1()
 Dim rngE As Range
 Set rngE = Application.Intersect(Columns(1), Cells(1).CurrentRegion.SpecialCells(xlCellTypeBlanks).EntireRow)
 Columns(2).Insert Shift:=xlToRight
 rngE.Insert Shift:=xlToRight
 Cells(1, 2).Delete
 Columns(2).SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
Gruß Uwe
Antworten Top
#9
Hallo Uwe,
super, ich danke dir. Es hat auf Anhieb geklappt, genauso hatte ich es mir vorgestellt.
Grüße
Joachim
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste