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.

VBA: neue Zeile bei Zeichen
#1
Hallo zusammen,

in einer Zelle stehen bei mir mehrere Werte, die mit einem "." getrennt sind (war ursprünglich ein summenprodukt).
Nun hätte ich gerne, dass jeder dieser Werte in einer neuen Zeile aufgeführt wird.
Hier als Beispiel:

Vorher:
Zelle A1 = 42100.42101.42110.42180.42190.42200.42280.42290

Nachher:

Zelle A1 = 42100
Zelle A2 = 42110
Zelle A3 = 42110
Zelle A4 = 42180
...

Ich hoffe das Anliegen kann nachvollzogen werden...

Danke schon mal und Grüße
Alpha
Antworten Top
#2
Hallo,

schau mal hier: https://www.clever-excel-forum.de/Thread...Neue+Zeile

Egebnis:

Tabelle1

AB
142100.42101.42110.42180.42190.42200.42280.4229042100
242101
342110
442180
542190
642200
742280
842290

Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8

Makro mit Alt + F11 hinter das Tabellenblatt legen

Sub splitten()
  Dim i As Long
  Dim a
  a = Split(Cells(1, 1), ".")
  For i = LBound(a) To UBound(a)
      Cells(i + 1, 2) = a(i)
  Next i
End Sub


Gruß
Marcus

Wissen ist Macht - es ist aber nicht schlimm nicht alles zu wissen.
Man muss nicht alles wissen - man muss nur wissen wo es steht, oder wo man Hilfe bekommt.
Antworten Top
#3
Hallöchen,

oder ohne Schleife


Range("b1").Resize(UBound(a) + 1, 1).Value = WorksheetFunction.Transpose(a)


wobei man statt der Variablen a ruhig ein paar Stabbuchen mehr investieren kann, z.B. arrDaten Smile
Zum einen ist das etwas aussagekräftiger hinsichtlich des Inhaltes und zum anderen wenn man in einem längeren Code sucht könnte a ein paar unerwünschte Treffer ergeben :20:
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#4
Moin und off topic!
Da liegt Google Sheets mit einer simplen Formel in B1 klar vor Excel:
=TRANSPOSE(SPLIT(A1;"."))

   

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top


Gehe zu:


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