Namen splitsen

Status
Niet open voor verdere reacties.

flbos

Gebruiker
Lid geworden
5 feb 2004
Berichten
267
Hallo,

Ik heb ooit eens een functie voorbij zien komen over het splitsen van namen in voorletters, tussenvoegsels en achternaam. Iemand had een fucntie geschreven om dit te realiseren. Ik kan deze echter met geen mogelijheid meer vinden. Iemand die hem nog wel zoiets heeft of kan vinden?

Ik heb een kolom naam waarin allerlei tussenvoegsels gebruikt worden, de ene keer staan ze voor de achternaam en de andere keer er achter. Met initialen wordt ook niet altijd even consequent gewerkt. Het zal dus niet eenvoudig zijn om dit op te lossen, maar ik zou graag een poging wagen. Als er nog tips zijn hoor ik het natuurlijk ook graag.

Met de functie die ik bedoel werden behoorlijke resultaten behaald, het zou erg fijn zijn als iemand zoiets heeft. Ik heb momenteel de kennis niet om dit zelf voor elkaar te krijgen
 
Archief deel I

Het volgende gevonden in mijn eigen archiefje waar je misschien iets mee kunt (oplossing werd gegeven door Jochem van Galen):
Combineren van velden kan het beste via op de volgende manier:
1. Maak een tekstbox aan en geef 'm een naam.
2. Zet bij [Eigenschappen] -> tabblad [Gegevens] -> bovenste veld (weet even de naam in het Nederlands niet). In het Engels is dit [Properties] -> tabblad [Data] -> [Control Source].
3. Zet daarin de volgende code:
=[Voornaam] & " " & IIf([Tussenvoegsel]<>"";[Tussenvoegsel] & " " & [Achternaam];[Achternaam])
of zet daarin:
=[Voorletters] & " " & IIf([Tussenvoegsel]<>"";[Tussenvoegsel] & " " & [Achternaam];[Achternaam])
afhankelijk van hoe je velden heten.
Hij zet nu neer:
[Voorletters] (met spatie) en
- of [Tussenvoegsel] spatie [Achternaam]
- of [Achternaam] (als Tussenvoegsel leeg is)
Suc6
 
Bedankt maar dit is niet wat ik zoek. Dit gaat over aan elkaar plakken van velden. De functie die ik bedoel kan namen scheiden die in één veld staan en ook altijd hebben gestaan
 
U riep...?

Zat ik te Googlen op mijn eigen naam, kwam ik zomaar deze thread tegen! Na meer dan drie jaar geprobeerd om in te loggen hier en het werkte ook nog! Hoe dan ook: daar ben ik weer!

Als de inhoud van je kolom niet regelmatig is opgebouwd, zul je er een zware dobber aan krijgen om het fatsoenlijk te splitsen.

De beste manier om dit aan te pakken is volgens mij als volgt:
1. Splitsen de waarde van de kolom op spaties (eventueel eerste dubbele spaties verwijderen)
2. Controleer bij de waarden of de lengte > 3 of niet
2a Ja>dan is het een achternaam
2b 2 of 3 karakter > tussenvoegsel of initiaal
2c 2 karakters waarbij het 2e karakter een punt is> 1e karakter is initiaal
2...of probeer een overzicht te vinden of te maken van alle voorkomende tussenvoegsels en zoek daarop.

Ik raad je aan om een aparte functie te maken in VBA hiervoor, omdat het coderen hiervan in een query erg veel werk is. Waar je op moet letten bij dit soort splits-pogingen: Achternamen van minder dan drie karakters, namen waarin ook een meisjesnaam voorkomt (bij Jansen-de Vries, met of zonder spatie!) en voorletters van meer dan 1 karakter (Th. Ph.)

Laat maar weten als je meer hulp nodig hebt.
 
Re: Archief deel I

Geplaatst door Anne-Marie
[B(...)
1. Maak een tekstbox aan en geef 'm een naam.
2. Zet bij [Eigenschappen] -> tabblad [Gegevens] -> bovenste veld (weet even de naam in het Nederlands niet). In het Engels is dit [Properties] -> tabblad [Data] -> [Control Source].
3. Zet daarin de volgende code:
=[Voornaam] & " " & IIf([Tussenvoegsel]<>"";[Tussenvoegsel] & " " & [Achternaam];[Achternaam])
of zet daarin:
=[Voorletters] & " " & IIf([Tussenvoegsel]<>"";[Tussenvoegsel] & " " & [Achternaam];[Achternaam])
afhankelijk van hoe je velden heten.
Hij zet nu neer:
[Voorletters] (met spatie) en
- of [Tussenvoegsel] spatie [Achternaam]
- of [Achternaam] (als Tussenvoegsel leeg is)
Suc6 [/B]

Maar dit is wel wat ík zocht!
Thx!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan