Erstellen einer Lemma Liste
#1
Moin Moin,
Ich habe kein passendes Thema gefunden, deswegen erstelle ich ein neues. Ich möchte eine Lemma Liste erstellen, d.h. eine Wortliste, die alle Wortformen eines Grundwortes anzeigt.

Mein Datensatz sieht bisher so aus:


Code:
Spalte A          Spalte B
Abende             Abend
Abenden            Abend
Abendland          Abendland
Abendlandes        Abendland
abendländische     abendländisch
abendländischen    abendländisch
abendliche         abendlich
abendlichen        abendlich
...                ...
jetzt möchte ich in Spalte C in jeder Zelle ale Wörter aus Spalte A, mit einem Komma abgetrennt, auflisten, die das gleiche Wort in Spalte B haben. Zur Veranschaulichung:

Code:
Spalte A                Spalte B              Spalte C
Abende                  Abend                 Abende, Abenden
Abenden                 Abend                 Abende, Abenden
Abendland               Abendland             Abendland, Abendlandes
Abendlandes             Abendland             Abendland, Abendlandes
abendländische          abendländisch         abendländische, abendländischen
abendländischen         abendländisch         abendländische, abendländischen
abendliche              abendlich             abendliche, abendlichen
abendlichen             abendlich             abendliche, abendlichen


Wie kriege ich das hin? Ich hoffe, ich habe mein Problem gut genug dargestellt und ihr habt eine Lösung parat.
Top
#2
Hallo,

wenn das Ergebnis so sein sollte:

Code:
Spalte A                Spalte B              Spalte C
Abende                  Abend                 Abend, Abenden
Abenden                 Abend                 Abend, Abenden
Abendland               Abendland             Abendland, Abendlandes
Abendlandes             Abendland             Abendland, Abendlandes
abendländische          abendländisch         abendländisch, abendländischen
abendländischen         abendländisch         abendländisch, abendländischen
abendliche              abendlich             abendlich, abendlichen
abendlichen             abendlich             abendlich, abendlichen

könnte man das mit einem "Dictionary" lösen.

mfg

(Was ist der Zweck)
[-] Folgende(r) 1 Nutzer sagt Danke an Fennek für diesen Beitrag:
  • deMisere
Top
#3
Hallo Fennek, 

1.: Wie genau läuft das mit dem dictionary? 
2.: Der output ist leider nicht genau das, was ich brauche. in Spalte C fehlt ja immer eine Form.

Danke schon mal!

PS: Was der Zweck ist? Ich brauche die Lemma Liste für ein Textanalysetool, damit in Wortlisten nicht sämtliche Begriffe x-fach in unterschiedlichen Formen auftauchen.
Top
#4
Hallo,

mein Vorschlag ist:

Code:
Sub F_en()
Ar = ActiveSheet.Columns("A:B").SpecialCells(2)

With CreateObject("Scripting.dictionary")
   
    For i = 2 To UBound(Ar)
        If Not .exists(Ar(i, 2)) Then
            .Item(Ar(i, 2)) = Ar(i, 1)
        Else
            .Item(Ar(i, 2)) = .Item(Ar(i, 2)) & ", " & Ar(i, 1)
        End If
    Next i
    Cells(1, 5).Resize(.Count, 2) = Application.Transpose(Array(.keys, .items))
End With
End Sub

In der Bsp-Datei läuft es.

mfg


Angehängte Dateien
.xlsm   Lemgo.xlsm (Größe: 15,38 KB / Downloads: 4)
[-] Folgende(r) 1 Nutzer sagt Danke an Fennek für diesen Beitrag:
  • deMisere
Top
#5
Funktioniert perfekt, tausend Dank!
Top


Gehe zu:


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