Anzeige
Archiv - Navigation
1624to1628
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

Zellen aufspalten

Zellen aufspalten
31.05.2018 17:57:19
Steffen
Hallo in die Runde,
ich habe folgendes Problem: Ich habe in einer Spalte Zellen, bei der die jeweilige Zelle durch Unternehmensnamen und einem dazugehörigen Ansprechpartner strukturiert ist. Die Unternehmensnamen sind logischerweise unterschiedlich lang und bestehen aus unterschiedlich vielen Wörtern, die Namen der Personen ebenso.
Jetzt möchte ich beides voneinander trennen und in einer Spalte die Unternehmensnamen und in einer zweiten die Personennamen stehen haben.
Die Zelle ist jeweils unterteilt in "oben" und "unten" und somit per Tastenbefehl "Alt+Enter". Oben steht das Unternehmen und unten der Name.
Bsp.: Zelle E6:
Facebook Inc.
Mark Zuckerberg
Das Unternehmen wird mit einem Leerzeichen, dann Alt+Enter und noch einem Leerzeichen in der neuen Zeile vom Namen getrennt.
Mit diesem Befehl (ebenfalls hier im Forum gefunden) klappt das Trennen der einzelnen Worte. _ Aber ich weiß nicht wie ich den Enter-Befehl hier einfügen kann, sodass ich davon "oben" und "unten" jeweils trennen kann.

Sub TextTrennen()
Dim sText As String ' der eingegebene Text
Dim iPos As Integer ' die Position des Space (Trennzeichen)
Dim iCol As Integer ' die Beginn-Spalte der Aufsplittung
Dim iIndx As Integer ' For/Next Index
For iIndx = 2 To Range("A65536").End(xlUp).Row ' von Zeile 2 bis Ende
sText = Range("A" & iIndx).Value ' den Text holen
iPos = InStr(sText, " ") ' Space-Position feststellen
iCol = 2 ' Beginn der Aufteilungs-Spalte
While iPos > 0 ' solange Space gefunden wurde
Cells(iIndx, iCol).Value = Left(sText, iPos - 1) ' Zellen ab B befüllen
sText = Right(sText, Len(sText) - iPos) ' Eingabetext "verkürzen"
iPos = InStr(sText, " ") ' Space suchen
iCol = iCol + 1 ' nächste Spalte errechnen
Wend
Cells(iIndx, iCol).Value = sText ' letztes Wort übertragen
Next iIndx ' nächste Zeile
End Sub

Ich habe es schon statt Leerzeichen in der " " mit %{enter} oder %~ versucht, was aber nicht funktionierte...
Vielen Dank für eure Hilfe!

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellen aufspalten
31.05.2018 18:19:40
Sepp
Hallo Steffen,
das geht auch ohne VBA.
Spalte markieren > Daten > Text in Spalten > Getrennt > Trennzeichen "andere" und dort mit ALT+010 einen Zeilenumbruch angeben > Fertigstellen.
 ABCDEF
1Gruß Sepp
2
3

Anzeige
auch per VBA
31.05.2018 18:57:27
Sepp
Hallo Steffen,
Text in Spalten kann man auch per VBA anwenden.
Sub TextTrennen()

Range(Range("A2"), Range("A2").End(xlDown)).TextToColumns Destination:=Range("A2"), _
          DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _
          ConsecutiveDelimiter:=False, Tab:=False, Semicolon:=False, _
          Comma:=False, Space:=False, Other:=True, OtherChar:=Chr(10)
End Sub

VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0


 ABCDEF
1Gruß Sepp
2
3

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige