Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Leere Zellen löschen und nach oben verschieben

Leere Zellen löschen und nach oben verschieben
30.10.2018 07:46:51
Christoph
Guten Tag
Ich habe eine Tabelle, bei welcher in den Spalten A-L jeweils Werte sind. In der Zeile 1 ist jeweils die Überschrift vorhanden. Danach sind die Werte von Zeile 2-100 verteilt. Gerne möchte ich die leeren Zellen löschen und die Werte zusammenfügen (nach oben verschieben). Somit habe ich z.B. in der Spalte A nicht mehr bei der Zeile 4, 20, 35 einen Wert, sondern in der Zeile 2,3 und 4, sowie in der ZEile 1 die Überschrift.
Ist dies via VBA möglich und wie würde dies aussehen?
Besten Dank für eure Hilfe.
Gruss Christoph
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Leere Zellen löschen und nach oben verschieben
30.10.2018 07:54:20
Matthias
Hallo,
erst Bereich markieren.
dann:
Selection.SpecialCells(xlCellTypeBlanks).Delete Shift:=xlUp Gruß Matthias
AW: Leere Zellen löschen und nach oben verschieben
30.10.2018 08:06:32
Christoph
Hallo Matthias
Etwas scheint nicht zu funktionieren.
Sub Makro1()
Range("A1:L100").Select
Selection.SpecialCells(xlCellTypeBlanks).Delete Shift:=xlUp
End Sub
Was mache ich falsche?
Gruss Christoph
Anzeige
was "scheint" denn nicht zu funktionieren?
30.10.2018 08:22:38
Matthias
Hallo
Was funktioniert denn bei Dir nicht?
Habs gerade bei mir getestet. Funktioniert.
Gruß Matthias
AW: was "scheint" denn nicht zu funktionieren?
30.10.2018 08:42:21
Christoph
Es wird hier nur bei der Zeile A die Werte nach oben verschoben, es soll jedoch in jeder Spalte die leeren Zellen löschen und die Daten nach oben verschieben. Auch soll es diese leeren Zellen zwischen den Eingaben nach oben verschieben.
Gruss
Anzeige
lad mal die Mappe hoch
30.10.2018 08:58:38
Matthias
Hallo,
sind denn die Zellen auch wirklich leer?
Bei mir wird jede Spalte bearbeitet.
Vorher:
Tabelle1

 ABCDEFGHIJKL
1Ü1Ü2Ü3Ü4Ü5Ü6Ü7Ü8Ü9Ü10Ü11Ü12
2            
3    1     1 
41  1       1
5            
6            
7 1     1   2
8         1  
9            
10   2       3
11     1  1   
12            
13  1        4
14    2       
15         2  
16            
17           5
18            
19   3        
202           
21       2    
22          2 
23  2         
24    3       
25            
26           6
27         3  
28   4 2      
29            
30            
31      3     
32  3         
33          3 
34 2 5        
353           
36        2   
37           7
38            


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
Nachher:
Tabelle1

 ABCDEFGHIJKL
1Ü1Ü2Ü3Ü4Ü5Ü6Ü7Ü8Ü9Ü10Ü11Ü12
2111111311111
3222222 22222
43 333    333
5   4       4
6   5       5
7           6
8           7
9            


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
Funktioniert ohne Probleme
lad mal die Mappe hoch, dann schauen wir weiter (persönl. Daten bitte entfernen)
Gruß Matthias
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Leere Zellen in Excel löschen und nach oben verschieben


Schritt-für-Schritt-Anleitung

Um leere Zellen in Excel zu löschen und die Werte nach oben zu verschieben, folge diesen Schritten:

  1. Bereich markieren: Wähle den Bereich aus, in dem Du die leeren Zellen löschen möchtest (z.B. A1:L100).

  2. VBA-Editor öffnen: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Neues Modul einfügen: Klicke mit der rechten Maustaste im Projektfenster auf „VBAProject (DeineDatei.xlsx)“, wähle „Einfügen“ und dann „Modul“.

  4. Makro einfügen: Füge den folgenden Code in das Modul ein:

    Sub LeereZellenLoeschen()
        Range("A1:L100").Select
        Selection.SpecialCells(xlCellTypeBlanks).Delete Shift:=xlUp
    End Sub
  5. Makro ausführen: Schließe den VBA-Editor und gehe zurück zu Excel. Drücke ALT + F8, wähle LeereZellenLoeschen aus und klicke auf „Ausführen“.

Dieser Vorgang entfernt die leeren Zellen und verschiebt die restlichen Werte nach oben.


Häufige Fehler und Lösungen

  • Problem: Es werden nur leere Zellen in einer Spalte gelöscht.

    • Lösung: Stelle sicher, dass Du den gesamten Bereich (A1:L100) markiert hast und dass die Zellen wirklich leer sind (keine Leerzeichen oder Formate enthalten).
  • Problem: Fehlermeldung beim Ausführen des Makros.

    • Lösung: Überprüfe, ob Du den Code korrekt eingegeben hast und dass die richtige Excel-Version verwendet wird. Das Makro sollte in Excel 2013 oder neuer funktionieren.

Alternative Methoden

Wenn Du kein VBA verwenden möchtest, kannst Du auch die folgenden Schritte nutzen:

  1. Daten sortieren: Markiere den Bereich und gehe zu „Daten“ > „Sortieren“. Sortiere die Daten so, dass leere Zellen am Ende erscheinen.

  2. Leere Zellen manuell löschen: Markiere die leeren Zellen, klicke mit der rechten Maustaste und wähle „Zellen löschen“. Wähle „Nach oben verschieben“.

  3. Filter verwenden: Aktiviere den Filter für den Bereich und filtere nach leeren Zellen. Lösche die gefilterten Zeilen und entferne den Filter anschließend.


Praktische Beispiele

Hier sind einige Anwendungsbeispiele zur besseren Veranschaulichung:

  • Beispiel 1: Eine Tabelle mit Verkaufsdaten, in der einige Verkaufszahlen fehlen. Mit dem VBA-Makro kannst Du die leeren Zellen schnell entfernen und die Tabelle übersichtlicher gestalten.

  • Beispiel 2: Eine Umfrageergebnis-Tabelle, in der Teilnehmer nicht alle Fragen beantwortet haben. Durch das Löschen der leeren Zellen wird die Analyse der Daten vereinfacht.


Tipps für Profis

  • Shortcut für leere Zellen löschen: Nutze Strg + - (Minus-Taste) nach dem Markieren der leeren Zellen, um diese schnell zu löschen und nach oben zu verschieben.

  • VBA optimieren: Du kannst den VBA-Code erweitern, um nur leere Zellen in bestimmten Spalten zu löschen oder um eine Rückgängig-Funktion einzubauen.

  • Doppelte Werte löschen: Wenn Du auch doppelte Werte löschen möchtest, kannst Du die Funktion „Daten“ > „Duplikate entfernen“ nutzen, bevor Du die leeren Zellen löschst.


FAQ: Häufige Fragen

1. Frage
Wie kann ich leere Zellen in einer bestimmten Spalte löschen?
Antwort: Du kannst den VBA-Code anpassen, um nur eine bestimmte Spalte zu bearbeiten, indem Du Range("A2:A100") anstelle von Range("A1:L100") verwendest.

2. Frage
Gibt es einen Shortcut, um leere Zeilen zu löschen?
Antwort: Ja, Du kannst Strg + - verwenden, nachdem Du die entsprechenden leeren Zeilen markiert hast, um sie schnell zu löschen und die übrigen Zeilen nach oben zu verschieben.

3. Frage
Wie kann ich leere Zellen nach links verschieben?
Antwort: Ändere im VBA-Code Shift:=xlUp zu Shift:=xlToLeft, um die leeren Zellen nach links zu verschieben.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige