Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1188to1192
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Spalten nach links auffüllen ohne Leerzellen

Spalten nach links auffüllen ohne Leerzellen
Mike
Hallo,
ich stehe vor folgendem Problem und weiß da leider keine Lösung:
Ich habe eine Excel-Datei mit zig Tausend Datensätzen, in A2 Steht z.B. Titel, B2 Vorname, in B3 Strasse und so weiter. Nun handelt es sich bei diesen Datensätzen um Ärzte denen bestimmte Fachrichtungen zugeordnet sind. Die Fachrichtungen stehen ab der Zelle K2, in L2 usw. manche Ärzte haben eine Fachrichtung, aber auch viele mehrere Fachrichtungen. Nun sind diese Fachrichtungen aber in den unterschiedlichsten Zellen. Die Zellen in K sind immer ausgefüllt, bei den Zellen dahinter ist aber das Problem dass manche Fachrichtungen nicht direkt in L stehen, sondern einige Zellen Platz ist und das dann z.B. erst in N oder O steht. Die Aufgabe besteht nun darin diese Fachrichtungen so in die Form zu bringen, dass zwischen den einzelnen Fachrichtungen bei dem jeweiligen Datensatz keine Leerzeile ist. Also, wenn jemand 3 Fachrichtungen hat soll das beispielsweise in K2, L2 und M2 stehen und nicht in K2, O2 und Q2. Hat da jemand eine Idee, wie man das Problem lösen könnte? Ich wäre da wirklich sehr dankbar. Ich habe zur Veranschaulichung mal eine Musterdatei beigefügt.
https://www.herber.de/bbs/user/72714.xls
AW: Spalten nach links auffüllen ohne Leerzellen
17.12.2010 16:50:03
Andre
Hi,
ich habe mein Excel auf Englisch, aber unter dem Menüpunt Daten "Sotieren" kannst du dort auch mit der Option die Orientierung ändern. d.h anstatt von oben nach unten sortieren, rechts nach links.
Damit wirst du die Leerzeilen los und kannst gleichzeitig auch die Reihenfolge verschönern.
Habs getestet funkioniert.....
Gruss
Andre
AW: Spalten nach links auffüllen ohne Leerzellen
17.12.2010 16:53:34
Mike
Hallo Andre,
danke für den Tipp, bei mir funktioniert das leider nicht.
Mike
AW: Spalten nach links auffüllen ohne Leerzellen
17.12.2010 16:53:50
Andre
übertragen scheint nicht zu funktioniert zu haben.....
Also nochmal:
Unter Daten im Menüpunkt kannst du Sortieren. Anstatt von oben nach unten zu sortieren kannst du in der Option bei Sortieren die Orientierung festlegen und damit von rechts nach links sortieren.
Damit klappt es ganz wunderbar.
Gruss
Andre
sorry für eventuellen Doppelpost.....
Anzeige
AW: Spalten nach links auffüllen ohne Leerzellen
17.12.2010 16:58:38
Mike
Hallo,
bei mir sortiert der zwar, aber die Leerzellen verschwinden nicht und sortieren will ich ja nicht unbedingt, sondern die Zellen die leer sind verschwinden lassen und praktisch nach links auffüllen.
AW: Spalten nach links auffüllen ohne Leerzellen
17.12.2010 17:30:19
Andre
Sorry jetzt habe ich ein Makro:
Einfach dieses Makro reinkopieren und ausführen. Es geht bis jetzt von Spalte A-Z, falls deine Daten über Z hinausgehen einfach anpassen.
Sub Nullwerte_löschen()
Dim rng As Range, Zelle As Range, i As Integer
Set rng = Range("A1:Z" & Range("Z65536").End(xlUp).row)
For Each Zelle In rng
If Zelle = 0 Then Zelle.ClearContents
Next
Range("A1:Z" & Range("Z65536").End(xlUp).row).SpecialCells(xlCellTypeBlanks).Cells.Delete
End Sub
Gruss
Andre
Anzeige
AW: Spalten nach links auffüllen ohne Leerzellen
17.12.2010 17:39:09
Mike
Hi Andre,
danke für Deine Bemühungen, aber das funktioniert bei mir leider auch nciht. Liegt vielleicht daran, dass ich die 2003er Version habe? Hat noch jemand eine andere Idee?
Spalten nach links auffüllen mit VBA
17.12.2010 18:07:43
Erich
Hi Andre,
probier mal

Option Explicit
Sub Auffuellen()
Dim lngC As Long, zz As Long, cc As Long, ee As Long
lngC = Cells(1, Columns.Count).End(xlToLeft).Column ' Anz. Spalten in Zeile 1
For zz = 2 To Cells(Rows.Count, 11).End(xlUp).Row   ' Anz. Zeilen in Spalte K
ee = 10
For cc = 11 To lngC
If Len(Trim(Cells(zz, cc))) > 0 Then
ee = ee + 1
If ee 
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Spalten nach links auffüllen mit VBA
17.12.2010 18:17:07
Mike
Hallo Erich,
super, das war genau das. Klasse, ich danke Dir vielmals. Noch eine Frage, was muss ich ändern, wenn ich das für andere Dateien mit ähnlichem Problem nutzen möchte? Muss dass was aufgeräumt werden soll einfach ab K2 stehen?
grüße
Mike
Anpassungen
17.12.2010 19:29:52
Erich
Hi Mike,
was und wieviel du ändern musst, wenn du das für andere Dateien mit ähnlichem Problem nutzen willst,
hängt nun mal davon ab, wie ähnlich das Problem und wie anders die anderen Dateien sind.
Wenn es z, B. nicht um die Spalten ab K geht, musst du einfach die Zahlen 10 und 11 ersetzen durch die Nummer (vor) der neuen ersten Spalte.
Und wenn es nicht ab Zeile 2, sondern ab Zeile 7 laufen soll, dann
For zz = 7 To Cells(Rows.Count, ...
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Spalten nach links auffüllen ohne Leerzellen
17.12.2010 17:59:03
Peter
Hallo Mike,
so sollte es funktionieren:
Option Explicit
Public Sub Aufschliessen()
Dim lZeile   As Long
Dim iLeSpa   As Long
Dim iSpalte  As Integer
With ThisWorkbook.Worksheets("Tabelle1")
For lZeile = 2 To .Cells(Rows.Count, 11).End(xlUp).Row
If Trim(.Range("K" & lZeile).Value)  "" Then
iLeSpa = .Cells(lZeile, Columns.Count).End(xlToLeft).Column
For iSpalte = iLeSpa To 12 Step -1
If Trim(.Cells(lZeile, iSpalte).Value) = "" Then
.Cells(lZeile, iSpalte).Delete Shift:=xlToLeft
End If
Next iSpalte
End If
Next lZeile
End With
End Sub
Gruß Peter
Anzeige
AW: Spalten nach links auffüllen ohne Leerzellen
17.12.2010 18:20:17
Mike
Hallo Peter,
danke Dir auch, das funktioniert auch sehr gut, das von Erich war ein klein bischen schneller, trotzdem vielen Dank.

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige