Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Inhalte mehrere Zellen

Inhalte mehrere Zellen
christian
Hallo !
Ich möchte Inhalte aus mehreren Zellen in einer Zelle zusammenfassen aber Dopplungen vermeiden.
Das Ganze sollte wie folgt aussehen:
In A1 soll alles was in A2 , A3, A4, A5 steht zusammengefasst werden. Die Inhalte in den Zellen A2-A5 sind durch ein Semikolon getrennt.
In A2 steht z.b.: SU EN NA 41; SU EN NA 42; SI EN 5;
In A3 steht z.B.: SU EN NA 41; SU EN NA 42; SI EN 7;
In A4 steht z.B.: SI EN 7; SI EN 5; GN EN 56;
Jetzt sollte in A1 nur folgendes stehen : SU EN NA 41; SU EN NA 42; SI EN 5; SI EN 7; GN EN 56;
(hinter dem letzte Wert auch ein Semikolon)
Mit =a2&a3&a4 alleine klappt das nicht ...
Wer weiß Rat ?
Viele Grüße
Christian
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
Werte ohne Redundanzen - VBA-Lösung
26.11.2009 17:51:53
NoNet
Hallo Christian,
nur per Formeln/Funktionen lässt sich das nicht 100%ig lösen (an alle Kritiker : Iteration halte ich hier für zu unsicher !), aber per VBA ist das kein Problem. kopiere das folgende Makro in ein allgemeines Modul (z.B. "Modul1") im VBA-Editor :
Sub WerteOhneRedundanzen() Dim lngZ As Long, rngZelle As Range, strWerte For Each rngZelle In Range("A2:A" & Cells(Rows.Count, 1).End(xlUp).Row) strWerte = Split(rngZelle.Value, ";") For lngZ = LBound(strWerte) To UBound(strWerte) If InStr([A1], Trim(strWerte(lngZ) & ";")) = 0 Then [A1] = [A1] & Trim(strWerte(lngZ)) & "; " End If Next Next End Sub Gruß, NoNet
Anzeige
AW: Inhalte mehrere Zellen
26.11.2009 18:08:55
IngGi
Hallo Christian,
NoNet war schneller, ich stell meine Lösung aber trotzdem noch hier rein, da ich das Ganze als benutzerdefinierte Funktion konzipiert habe, so dass du per Formel darauf zugreifen kannst. Kopiere den VBA-Code in ein allgemeines Modul. Dazu gehst du mit Alt+F11 in den VBA-Editor und fügst über Einfügen | Modul ein neues Modul ein.
 A
1 SU EN NA 41; SU EN NA 42; SI EN 5; SI EN 7; GN EN 56;
2 SU EN NA 41; SU EN NA 42; SI EN 5;
3 SU EN NA 41; SU EN NA 42; SI EN 7;
4 SI EN 7; SI EN 5; GN EN 56;

Formeln der Tabelle
ZelleFormel
A1=aggregat(A2:A4)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Private Function Aggregat(rngBereich As Range) As String

Dim rng As Range
Dim strAusgabe As String
Dim vntArr As Variant
Dim intElement As Integer

For Each rng In rngBereich
  vntArr = Split(rng, ";")
  Redim Preserve vntArr(Ubound(vntArr) - 1)
  For intElement = 0 To Ubound(vntArr)
    If InStr(1, strAusgabe, vntArr(intElement)) = 0 Then
      If Left(vntArr(intElement), 1) <> " " Then
        strAusgabe = strAusgabe & " "
      End If
      strAusgabe = strAusgabe & vntArr(intElement) & ";"
    End If
  Next 'intElement 
  
Next 'rng 

Aggregat = strAusgabe

End Function
Code eingefügt mit VBA in HTML 2.0.0.3size>
Gruß Ingolf
Anzeige
AW: Inhalte mehrere Zellen
26.11.2009 19:32:52
christian
Hallo Ingolf, NoNet
DANKE ! Klappt super !
Viele Grüße
Christian
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige