Das Clever-Excel-Forum.de - Treffen
findet vom 15. - 17. September 2017 in Thüringen / Region Großer Inselsberg statt. Hotelbuchung ab sofort möglich.


Zellinhalte nach bestimmten Zeichen zusammenfassen
#1
Hallo liebe Computercracks,

bin leider ahnungslos und brauche VBA-Hilfe. Im Rahmen meiner Büroarbeit habe ich große
Datenmengen in meiner Exceltabelle in Spalte A, D und E. Am Ende der einzelnen Zellen befinden sich
Rauten oder auch nicht. Zur Strukturierung des Textes müssen Textinhalte der einzelnen
Zellen zusammengefasst werden und zwar werden immer Zellinhalte zusammengefasst in denen
keine Raute ist. Dies geschieht solange bis wieder Zellinhalt mit # Raute am Ende addiert wird.
Wie mache ich so etwas?
to top
#2
Hallo,
Wenn z.b. Die erste Raute in d2 kommt, wäre der Text a1+d1+e1+a2+d2? Ohne Leerzeichen dazwischen? Und wo soll das hin?
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
to top
#3
Hallo Andre,
doch ein Leerzeichen soll natürlich dazwischen.
Beispiel

A1: Wert1
A2: Wert2
A3: Wert3#

Daraus folgt dann A1: Wert1 + Leerzeichen + Wert2 + Leerzeichen + Wert3#

A2 + A3 sollen dann leer sein, bzw. die leeren Zellen sollen wieder verschwinden,
Weil Zellen von unten herauf raufrücken sollen.
to top
#4
Hallo,

ich habe das jetzt erst mal so flexibel geschrieben, dass mit dem Makro die Spalte der aktiven Zelle verarbeitet wird. Man kann es natürlich auch wie in der Aufgabenstellung für die 3 Spalten A, D und E programmieren - einfach noch mal melden.

Achtung! Es wird die komplette Spalte bis zum letzten Eintrag verarbeitet. Vor der Anwendung die Daten sichern.

Code:
Sub ZusammenFassen()
'Zusammenfassen von Zellen einer Spalte einer Exceltabelle
'programmiert für Clever Excel Forum von schauan
'Variablendeklaration
'Integer (bei groesseren Datenmengen Long nehmen)
Dim iCnt%
'Variant-Array
Dim arrCol, arrTmp()
'Daten in Spaltenarray uebernehmen
arrCol = WorksheetFunction.Transpose(Range(Cells(1, ActiveCell.Column), Cells(Cells(Rows.Count, ActiveCell.Column).End(xlUp).Row, ActiveCell.Column)))
'temporaeres Array fuer ersten Zellinhalt dimensionieren
ReDim Preserve arrTmp(1 To 1)
'ersten Zellinhalt uebernehmen
arrTmp(1) = arrCol(1)
'Wenn Zellinhalt auf # endet, dann temporaeres Array neu dimensionieren
If Right(arrCol(1), 1) = "#" Then ReDim Preserve arrTmp(1 To UBound(arrTmp) + 1) Else arrTmp(1) = arrTmp(1) & " "
'Schleife ueber alle Zellinhalte
For iCnt = 2 To UBound(arrCol)
  'Zellinhalt dem temporaeren Array zuweisen
  arrTmp(UBound(arrTmp)) = arrTmp(UBound(arrTmp)) & Cells(iCnt, ActiveCell.Column)
  'Wenn Zellinhalt auf # endet, dann temporaeres Array neu dimensionieren
  If Right(arrCol(iCnt), 1) = "#" Then ReDim Preserve arrTmp(1 To UBound(arrTmp) + 1) Else arrTmp(UBound(arrTmp)) = arrTmp(UBound(arrTmp)) & " "
'Ende Schleife ueber alle Zellinhalte
Next
'Spalte loeschen
Columns(ActiveCell.Column).ClearContents
'Ergebnis zurueckschreiben
Cells(1, ActiveCell.Column).Resize(UBound(arrTmp)) = WorksheetFunction.Transpose(arrTmp)
End Sub
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
[-] Folgende(r) 1 Benutzer sagt Danke an schauan für diesen Beitrag:
Büroklammer
to top
#5
Hallo André,
habe den Code gerade ausprobiert. Läuft super!
Du bist der Retter unseres Büros. Danke
to top
#6
Halöchen,

na, dann trinkt mal einen Kaffee auf mich 21
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
to top


Möglicherweise verwandte Themen...
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Mittelwerte in Pivot-Tabelle zusammenfassen Thorbjörn 4 99 23.02.2017, 14:08
Letzter Beitrag: neopa
Photo Zusammenfassen mehrerer Zeilen nach einer ID Axel 3 82 22.02.2017, 22:19
Letzter Beitrag: Ego
Wink Zellen zu einer Zusammenfassen automatisch ExcelNoob11 11 148 15.02.2017, 13:25
Letzter Beitrag: atilla
  Werte zusammenfassen und darstellen Rosink17 5 88 10.02.2017, 20:05
Letzter Beitrag: schauan
Rainbow Zellinhalte kopieren Andrea 4 77 07.02.2017, 14:38
Letzter Beitrag: BoskoBiati
  Pivot Datensätze nicht mehr zusammenfassen Gruby 8 104 03.02.2017, 16:17
Letzter Beitrag: Gruby
  + Zeichen vor Zahl wenn positiver Wert Sebastian8029 1 55 26.01.2017, 09:29
Letzter Beitrag: Peter
Question Zeilen und Zellen mit Bedingung zusammenfassen lizzard 17 198 24.01.2017, 16:59
Letzter Beitrag: lizzard
  Ersetzen von Zeichen an bestimmter Stelle Quantum 22 442 21.01.2017, 19:38
Letzter Beitrag: Castor
  Ausgewählte Zeilen verschiedener Tabellen in einer Tabelle zusammenfassen Chris482 7 299 14.01.2017, 15:11
Letzter Beitrag: Rabe

Gehe zu:


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