Wordlist reversal

Pagina: 1
Acties:

  • quannah
  • Registratie: Maart 2007
  • Laatst online: 13-04 18:32
Ik heb een woordenlijst in Excel, met in kolom 1 een lexeem (woord), en in kolom 2 de gloss (vertaling). Nu wil hier een omgekeerde woordenlijst van maken waarbij de gloss de hoofd entry wordt. Het probleem is dat er soms meerdere glossen zijn (tot 3 of 4), gescheiden door ";" en dat deze in de omgekeerde woordenlijst elk apart opgenomen moeten worden, met de bijhorende vertaling.
Ik weet niet hoe ik dit in Excel (of Acces) moet doen, en of dit daarmee überhaupt mogelijk is.
Er bestaat lexicon software waarin dit wel mogelijk is (bijv. Toolbox), maar deze programma's gebruiken een standaard formaat met 'format markers' (Multi-Dictionary Formatter, MDF), en het is -voor zover ik weet- niet mogelijk lijsten te importeren uit Excel e.d., of deze te converteren naar MDF formaat.

Wie heeft een oplossing?!

  • onkl
  • Registratie: Oktober 2002
  • Laatst online: 23:39
Klein macrootje, wat de woordenlijst doorloopt en op een ander werkblad de omgekeerde lijst dropt.

  • quannah
  • Registratie: Maart 2007
  • Laatst online: 13-04 18:32
Hoe doe ik dat precies?

  • onkl
  • Registratie: Oktober 2002
  • Laatst online: 23:39
Belangrijkste vraag: moet het één keer of vaker gebeuren. Als het vaker moet gebeuren is automatiseren slim, als het éen enkel geval is, is prutsen vaak sneller.
Een typische "pruts" oplossing:
-Hak iedere gloss cel in brokken. Dus, als er drie glossen zijn in cel B2, wil je die in drie losse cellen, bijv. C2,D2, en E2 . Kijk naar functies als Find, Left, Right, Len en gebruik véél hulpkolommen.
edit:
Of doe niet moeilijk als het niet nodig is en zie hieronder. * onkl gaat koffie drinken

-Zodra je dat hebt, voeg je achter iedere kolom waar glossen staan een extra kolom toe. Daarin zet je, als er in de cel ervoor een gloss staat het lexeem Gebruik de functie IF.
-Selecteer alle cellen in zo'n combi van twee kolommen (niet de hele kolommen) en plak die op een nieuw werkblad. Zet alle gloss-lexeem combi's onder elkaar. Er zitten lege cellen tussen, maar dat maakt niet uit, want:
-Sorteer deze lijst op gloss en alle lege cellen zijn verdwenen.

En vraag het vooral, als je er niet uitkomt.

[ Voor 7% gewijzigd door onkl op 20-03-2007 14:54 ]


Verwijderd

bij puntje 1 van de prutsoplossing kun je ook met data->tekst naar kolommen de glossen eenvoudig opsplitsen omdat ze blijkbaar netjes gescheiden zijn door de ;

  • quannah
  • Registratie: Maart 2007
  • Laatst online: 13-04 18:32
Bedankt voor de hulp, onkl en heretic. Het zal wel lukken, ik heb de bewerkingen geprobeerd met een test bestandje, omdat mijn uiteindelijke woordenlijst zo'n 11.000 entries zal hebben :P
In principe hoef ik dit maar één keer te doen, dus zal een macro niet nodig zijn.

0. "; " (puntkomma spatie) vervangen door ";" (dat was ik in eerste instantie vergeten)
1. data > tekst naar kolommen (zoals Heretic opmerkte)
2. extra kolommen toevoegen na de kolommen met de net gescheiden glossen. Als functie gebruikt:
=ALS(ISTEKST(C1); A1; "") voor kolom D; en
=ALS(ISTEKST(E1); A1; "") voor kolom F; etc..
3. de nieuwe kolomparen CD, EF etc. naar nieuw werkblad kopiëren (met plakken speciaal: waarden) en sorteren.

In principe lukt alles dus wel, alleen weet ik nog niet hoe leuk Excel het vindt om dit met 11.000+ rijen te doen (qua geheugen) :D

  • onkl
  • Registratie: Oktober 2002
  • Laatst online: 23:39
Als Excel teveel geheugen vreet, moet je, vooral op oudere computers, niet te snel manisch beginnen te klikken om hem "weer los te krijgen". En 11000 rijen... ach, ach, ik heb een 800 MHz PC op equivalente aantallen rijen laten zwoegen... Je drinkt wat meer koffie, that's all.
Je methodiek ziet er goed uit.
Pagina: 1