Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1184to1188
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Liste sortiert wiedergeben

Liste sortiert wiedergeben
Fritz_W
Hallo Forumsbesucher,
ich bitte um Unterstützung in folgender Angelegenheit:
In einer Tabelle befinden sich in der Spalte B ab Zelle B11 Personennamen und in der Spalte C die zugehörigen Wohnorte. Ich möchte nun in der Spalte D beginnend in Zelle D11 für jeden Wohnort nacheinander die zugehörigen Personennamen in der Reihenfolge des Erscheinens in der Spalte B auflisten
Steht also in C11 Hamburg und sind z.B. in der Spalte B insgesamt 6 Personen mit Wohnort Hamburg aufgeführt, dann sollten in D11:D16 diese Namen nacheinander in der korrekten Reihenfolge erscheinen, danach die Person(en) des nächsten Wohnorts aus der Spalte C usw.
Ich hoffe, ich habe mein Anliegen nachvollziehbar erklärt und freue mich über eure Hilfe.
mfg
Fritz

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Liste sortiert wiedergeben -Beispieltabelle
19.11.2010 14:52:43
Fritz_W
Hallo Forumsbesucher,
füge eine Beispieldatei bei, in der ich das gewünschte Ergebnis in den Zellen mit hellgrünem Hintergrund eingetragen habe. So ist mein Anliegen (hoffentlich) besser nachvollziehbar.
mfg
Fritz
https://www.herber.de/bbs/user/72389.xls
AW: Liste sortiert wiedergeben -Beispieltabelle
19.11.2010 15:19:27
Ralf_P
Hallo Fritz,
verstehe ich nicht.
Ich hatte es so verstanden:
Namen ab B11 abwärts
Orte ab C11 abwärts
Dann schreibe doch mal in E11 "Hamburg" als Suchbegriff
und
in F11 {=WENN(ISTFEHLER(INDEX($B$11:$B$30;KKLEINSTE(WENN(C$11:C$30=$D$11;ZEILE($11:$30));ZEILE(A1))-10));"";INDEX($B$11:$B$30;KKLEINSTE(WENN(C$11:C$30=$D$11;ZEILE($11:$30));ZEILE(A1))-10))}
und runterkopieren.
Wie Du in der Formel erkennen kannst, ist der Bereich auf Zeile 11 bis 30 festgelegt - musst Du anpassen.
Dann werden alle Personen aus Hamburg gelistet.
Ist es dass, was Du wolltest?
VG, Ralf
Anzeige
AW: Liste sortiert wiedergeben -Beispieltabelle
19.11.2010 17:26:28
Fritz_W
Hallo Ralf,
vielen Dank für deine Unterstützung.
Ich konnte mich leider nicht früher melden - bitte um Entschuldigung.
Ich vermute, dass Du mein Anliegen missverstanden hast.
Ich möchte dass in der Spalte D ab D11 alle Personen aufgelistet werden, die in der Spalte B enthalten sind. Die Reihenfolge sollte sich zunächst nach dem Wohnort richten, dabei sollten die Personen nacheinander in der Reihenfolge in Spalte B aufgeführt werden, Also zunäächst alle Personen des ersten Wohnorts aus Spalte B, dann alle Personen des zweiten Wohnorts aus Spalte B usw.
Würde mich freuen, wenn Du mir hierzu eine Lösung bzw. einen Lösungsansatz anbieten kannst.
mfg
Fritz
Anzeige
AW: Liste sortiert wiedergeben -Beispieltabelle
19.11.2010 22:33:23
Peter
Hallo Fritz,
versuch es so:
Option Explicit
Public Sub Find_Methode()
Dim myDict        As Object
Dim WkSh          As Worksheet
Dim lZeile        As Long
Dim sText         As String
Dim vTemp         As Variant
Dim iIndx         As Integer
Dim rZelle        As Range
Dim sFundst       As String
Dim sSuchbegriff  As String
   Set myDict = CreateObject("Scripting.Dictionary") ' Zuordnung an Scripting Dictionary
   Set WkSh = ThisWorkbook.Worksheets("Tabelle1")
   For lZeile = 11 To WkSh.Cells(Rows.Count, 3).End(xlUp).Row
      WkSh.Range("C" & lZeile).Value = Trim(WkSh.Range("C" & lZeile).Value)
      If WkSh.Cells(lZeile, 3).Value <> "" Then
         myDict(WkSh.Cells(lZeile, 3).Value) = _
         myDict(WkSh.Cells(lZeile, 3).Value) + 0
      End If
   Next lZeile
   
   sText = Join(myDict.keys, ";")
   vTemp = Split(sText, ";")
   
   lZeile = 10
   
   For iIndx = LBound(vTemp) To UBound(vTemp)
      sSuchbegriff = vTemp(iIndx)
      With WkSh.Columns(3)
         Set rZelle = .Find(What:=sSuchbegriff, LookAt:=xlWhole, LookIn:=xlValues)
         If Not rZelle Is Nothing Then
            sFundst = rZelle.Address
            Do
               lZeile = lZeile + 1
               WkSh.Range("E" & lZeile).Value = WkSh.Range("B" & rZelle.Row).Value
               Set rZelle = .FindNext(rZelle)
            Loop While Not rZelle Is Nothing And rZelle.Address <> sFundst
          Else
            MsgBox "Der Begriff  """ & sSuchbegriff & """  wurde nicht gefunden.", _
               48, "   Hinweis für " & Application.UserName
         End If
      End With
   Next iIndx
   
End Sub
Ich gebe das Ergebnis zum Abgleich mit Deiner grün markierten Spalte D in Spalte E aus.
Gruß Peter
Anzeige
AW: Liste sortiert wiedergeben -Beispieltabelle
20.11.2010 08:37:40
Fritz_W
Hallo Peter,
funktioniert wie gewünscht, ganz herzlichen Dank!
Viele Grüße
Fritz

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige