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
  Suche nach bestimmten Kriterien abbrechen wirsing 19 239 03.12.2016, 21:18
Letzter Beitrag: schauan
  Ausgewählte Zeilen verschiedener Tabellen in einer Tabelle zusammenfassen Chris482 6 104 13.11.2016, 17:08
Letzter Beitrag: Peter
  Gleiche Namen im Diagramm zusammenfassen Harry 6 188 04.11.2016, 05:59
Letzter Beitrag: schauan
  Daten aus mehreren Datein zusammenfassen KS20 7 244 28.10.2016, 10:05
Letzter Beitrag: schauan
  Zellen erkennen kleiner oder gleich 8 Zeichen Sunny2000N 7 119 26.10.2016, 13:11
Letzter Beitrag: Jockel
Question Werte zusammenfassen keks89 7 167 12.10.2016, 08:42
Letzter Beitrag: Peter
  Sortierung mehrerer Zeilen nach Größe einer bestimmten Zelle Godman2 8 225 05.10.2016, 18:30
Letzter Beitrag: schauan
  Haupt und Unteradresse zusammenfassen und weiteres crisu444 23 568 03.10.2016, 11:53
Letzter Beitrag: shift-del
  Daten zusammenfassen PhilippB. 17 376 14.09.2016, 13:33
Letzter Beitrag: PhilippB.
  Jahresübersicht für bestellungen auf monatsbasis zusammenfassen swizzx 2 128 07.09.2016, 10:34
Letzter Beitrag: swizzx

Gehe zu:


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