Clever-Excel-Forum

Normale Version: Excel 2016 VBA: Mehrzeilige Werte in einer Zelle verarbeiten
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen und schönen guten Abend,

ist es möglich aus mehrzeiligen Zellen, also Zellen mit Zeilenumbruch, bestimmte Werte auszulesen um sie weiter zu verarbeiten?
Ich bekomme Daten z.B. in der dargestellten Form....und ich darf keine zusätzlichen Zeilen einfügen um die Inhalte aufzusplitten.
Es können auch abweichend von dem Beispiel noch mehr als zwei Zeilenumbrüche sein.

GHI
1010038 x 07.04.2015
37 x 13.04.2015
25 x 12.05.2015
100

Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8

Wie kann man die ersten Zahlen in Zelle "H10" bis zu dem "x" oder des Leerzeichens auslesen und automatisch in der dritten Spalte, hier "I10" als Gesamtsumme berechnen?
Gibt es da vielleicht eine Lösung mittels VBA oder Formel?

Vielen Dank für eine Rückmeldung!
Hallo,


wenn die Zellen immer mit den gleichen Kombinationen (Zeichenanzahl) gefüllt sind, dann so:



Arbeitsblatt mit dem Namen 'Tabelle1'
 BC
138 x 07.04.2015
37 x 13.04.2015
25 x 12.05.2015
100

ZelleFormel
C1{=SUMMENPRODUKT((TEIL(B1;(ZEILE(A1:INDEX(A:A;LÄNGE(B1)-LÄNGE(WECHSELN(B1;"x";""))))-1)*16+1;2))*1)}
Achtung, Matrixformel enthalten!
Die geschweiften Klammern{} werden nicht eingegeben.
Verlassen Sie den Zelleneditor mit Strg+Shift + Enter, statt Enter alleine.
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg
Hallo,

und hier eine VBA Lösung:


Code:
Sub test()
 a = Split(Cells(10, 8), Chr(10))
 For i = LBound(a) To UBound(a)
   Cells(10, 9) = Cells(10, 9) + Val(Split(a(i), " x")(0))
 Next i
End Sub
Hallo Edgar,

leider habe ich es nicht in der Hand dass die Kombinationen (Zeichenanzahl) immer gleich sind.
Ich bin nicht Herr der Daten-Einträge.

Ich habe Deine Formel mal ausprobiert...funktioniert in der Konstellation perfekt.

Vielen Dank!
Hallo Atilla,

danke auch Dir...das Makro funktioniert super.

Wie ich bereits bemerkt habe könnte es sein dass irgendwelche andere Zeichen als Trenner von der jeweils links stehenden Zahl vorkommen.
Gäbe es noch eine Lösung um das trotzdem funktionssicher zu machen? Eventuell auch eine erzwungenes Eingabeformat in der Datenspalte?
Hallo Sharky,

das ist mir gar nicht aufgefallen, es ist nämlich viel einfacher.

Die Funktion Val() gibt den ersten numerischen Wert aus.

Also unabhängig welche Zeichen den Zahlen folgen geht es so:


Code:
Sub test()
 a = Split(Cells(10, 8), Chr(10))
 For i = LBound(a) To UBound(a)
   Cells(10, 9) = Cells(10, 9) + Val(Split(a(i))(0))
 Next i
End Sub
Hallo Atilla,

super cool...das ist perfekt!
Jetzt ist das WE erst mal gerettet  Thumps_up

Vielen Dank!