Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Gliederung in Excel auf 2 Zellen aufteilen





Frage

Hallo zusammen! Ich habe in Excel 2003 folgendes Problem: Ich habe eine Gliederung mit etwa 1000 Zeilen nach folgendem Beispiel: 1. Hauptüberschrift 1.1. Erster Unterpunkt 1.2 Zweiter Unterpunkt 1.2.1 Noch ein Unterpunkt tiefer 1.2.1.1 Wieder ein Unterpunkt tiefer usw. Das Problem ist, dass jede Zeile in einer einzigen Zelle ist. Ich müsste nun die Gliederungsnummer in die linke Zelle und den nebenstehenden Text in die benachbarte Zelle aufteilen. Etwa so: A B C D 1. Hauptüberschrift 1.1. Erster Unterpunkt 1.2 Zweiter Unterpunkt 1.2.1 Noch ein Unterpunkt tiefer 1.2.1.1 Wieder ein Unterpunkt tiefer Mein Problem ist, dass die Gliederungsnummern eine unterschiedliche Länge haben und der nebenstehende Text auch noch Leerzeichen enthält. Wenn mir jemand weiterhelfen könnte, wär ich wirklich sehr dankbar!! Grüße, Martin

Antwort 1 von mapra

OK, die Leerzeichen wurden wohl nicht übernommen...
So soll die untere, fertige Lösung ausschauen:

_____A_____________B_____________C____________D__
1. ____________ Hauptüberschrift
1.1. ___________Erste Unterpunkt
1.2 ___________ Zweiter Unterpunkt
1.2.1 __________Noch ein Unterpunkt tiefer
1.2.1.1 ________ Wieder ein Unterpunkt tiefer

Antwort 2 von coros

Hallo mapra,

das könnte man mit "Text in Spalten" hinbekommen. Diese Funktion findest Du in der Menüleiste unter "Daten => Text in Spalten...". Dann einfach dem Assistenten folgen. Als Trennzeichen "Leerzeichen" auswählen.
Nachteil ist, es werde auch die Texte hinter den Zahlen getrennt, wenn diese durch ein Leerzeichen getrennt sind.

Eine andere Möglichkeit ist das nachfolgende Makro. Kopiere das Makro in ein StandardModul und starte es z.B. über eine Befehlsschaltfläche
Teste das Makro aber bitte in einer Testdatei und nicht gleich in Deiner Originaldatei.

Option Explicit

Sub Trennen()
Dim iRow As Integer
Application.ScreenUpdating = False
For iRow = 1 To Range("A65536").End(xlUp).Row
Cells(iRow, 2) = Mid(Cells(iRow, 1), 1, InStr(Cells(iRow, 1), " ") - 1)
Cells(iRow, 3) = Mid(Cells(iRow, 1), InStr(Cells(iRow, 1), " ") + 1, Len(Cells(iRow, 1)))
Next
Columns("A:A").Delete
End Sub


Mit dem Makro werden die Daten zunächst getrennt nach Deinen Vorgaben in Spalte B und C aufgeführt. Am Ende des Makros wird dann Spalte A gelöscht.

Ich hoffe, Du kommst klar.

Solltest Du nicht wissen, wie Du den Code in Deine Datei bekommst, dann schau mal auf meiner HP in der Rubrik Anleitungen und dort dann in der Anleitungsnummer 3 nach. Dort stelle ich dazu eine bebilderte Anleitung zur Verfügung, die Dir sicherlich helfen wird.

Bei Fragen melde Dich.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: