Avatar billede Jimsim Juniormester
10. september 2019 - 16:06 Der er 13 kommentarer og
1 løsning

Adskille adresser, vejnavn + husnummer

Jeg leder efter en løsning hvor jeg kan adskille en adresser-streng der indeholder både vejnavn og nr,, etage osv.
Jeg har fundet her på eksperten en formel der klare det hvis det "kun" er vejnavn og husnummer. Men hvis der er etage, bogstav osv med, virker den desværre ikke.

Er der nogle der har en løsning hvor jeg kan dele adresser ala disse op?

A. Vej Navn 1
Vejnavn 8

A. Vej Navn 16 A,st th
Vejnavn 12,1 tv
Gadenavn 11,st tv
Det fine vænge 2 A
Gadenavn 21 D,st,-6
Gadenavn 13,st th
Gadenavn 39,st mf
Ring-vejen Vej 12,2,-3
Grønparken 68,1 mf
Gårdhaven 39,st,-11
Vejnavn 1 B,3,-340
Avatar billede kim1a Ekspert
10. september 2019 - 16:24 #1
Følger lige med på sidelinjen, vi fandt aldrig rigtig en god løsning.
Avatar billede Jan Hansen Ekspert
10. september 2019 - 18:19 #2
Hej prøv:
i B1    =HVIS.FEJL(VENSTRE(A1;MIN(FIND({0;1;2;3;4;5;6;7;8;9};A1&{0;1;2;3;4;5;6;7;8;9}))-2);"")
Afsluttes med Ctrl+Shift+Enter da det er en Matrixformel

I C1    =ERSTAT(A1;1;LÆNGDE(B1)+1;"")
alm. formel

Jan
Avatar billede Jimsim Juniormester
11. september 2019 - 08:59 #3
Hej Jan
Det ser umiddelbart meget fint ud. Jeg kan godt se nu, at jeg kunne have beskrevet det lidt bedre.
For det jeg godt kunne tænke mig er, at få opdelt alt i hver sin celle, vejnavn, husnr., bogstav, etage osv. Jeg har prøvet herunder at skitsere det. Men kan da godt se nu, at det ligner en umulig opgave.


Adresse        Vejnavn    Husnummer    Litra    Etage    Side

A. Vej Navn 1        A. Vej Navn    1           
Vejnavn 8        Vejnavn    8           
A. Vej Navn 16 A,st th        A. Vej Navn    16    A    st    th
Vejnavn 12,1 tv        Vejnavn    12        1    tv
Gadenavn 11,st tv        Gadenavn    11        st    tv
Det fine vænge 2 A        Det fine vænge    2    A       
Gadenavn 21 D,st,-6        Gadenavn    21    D    st    6
Gadenavn 13,st th        Gadenavn    13        st    th
Gadenavn 39,st mf        Gadenavn     39        st     mf
Ring-vejen Vej 12,2,-3        Ring-vejen Vej     12        2    3
Grønparken 68,1 mf        Grønparken     68        1    mf
Gårdhaven 39,st,-11        Gårdhaven     39        st    11
Vejnavn 1 B,3,-340        Vejnavn     1    B    3    340
Avatar billede Jimsim Juniormester
11. september 2019 - 09:06 #4
Det ses bedre her :)
https://ibb.co/LRtFpkP
Avatar billede Jan Hansen Ekspert
11. september 2019 - 11:39 #5
Avatar billede Jimsim Juniormester
11. september 2019 - 12:30 #6
Hej Jan
Det er squ rigtigt godt gået. Den virker jo helt perfekt :)
Avatar billede acore Ekspert
11. september 2019 - 12:37 #7
Hvis du vil opdele data af den karakter, så begynder det med, at du opstiller dine regler for hvornår, der skal deles.

Deletegnet ser ud til at være mellemrum. Eller komma? Der er også "-" i dine data?Men du vil ikke have, at "Sønder Ring Vej" deles? I så fald starter husnummeret ved det første mellemrum efterfulgt af et tal?

Alt hvad der står efter det tal er så etage, side, mv. Det med Litra er svært, for det er der kun nogengange. Hvis der er et "ord" efter nummeret er det så etage ("stuen" eller "2") eller "B"? Du kan også sige, at hvis der er 3 ord, er det Litra, Etage, Side. Men det er ikke skudsikekrt. Tror den del bliver rigtig svær.

Hvis du kan definere reglerne skarpt, så kan det lade sig gøre.
Avatar billede Daffodil Professor
12. september 2019 - 13:25 #8
Hvad med "Karl den 5'st Alle 7", Dette forhold er diskuteret i tidligere løsninger.
Avatar billede acore Ekspert
12. september 2019 - 14:29 #9
"5'st" er ikke et tal. "5." er heller ikke (hvis man synes). Men du har ret: Det skal nok gå galt ind imellem.
Avatar billede Jan Hansen Ekspert
12. september 2019 - 14:39 #10
Avatar billede falster Ekspert
12. september 2019 - 16:47 #11
Jim kan nok ikke kræve, at "ind-data" altid er skrevet med konsekvent ens struktur.

Som acore anfører kan det give en del (definitions- eller andre problemer.)

Som altid en beundringsværdig indsats fra Jan.

Hvis vejnavn og husnummer angives, som de skal i henhold til

Adressebekendtgørelsen,

https://www.retsinformation.dk/Forms/R0710.aspx?id=200564

som i §16, stk. 2 siger:

Et husnummer består af indtil 4 tegn. Et husnummer består altid af et tal i intervallet fra 1 til 999, som eventuelt kan være suppleret af ét stort bogstav fra A til Z, uden mellemrum mellem tal og bogstav.

Giver Jans løsning - hos mig i hvert fald:

Vestergade 23A bliver til Vestergade     3A
Østergade 1B    bliver til Østergade 1

Men som sagt, det smarte regneark fra Jan løser de andre i tråden angivne eksempler. Og hvis der sættes "ulovlige" mellemrum ind foran A og B er det også OK.
Avatar billede Jan Hansen Ekspert
12. september 2019 - 17:28 #12
faster dine eksempler vil nok også kunne knækkes med formler ,ville nok til egetbrug løse det med nogle udf funktioner da formlerne bliver enorm lange!!
Avatar billede falster Ekspert
12. september 2019 - 20:21 #13
Helt enig.

Og der er også en verden til forskel på en liste, hvor mange forskellige har opgivet/tastet (deres) adresser eller en liste, som er opbygget af en person, der kender de præcise regler for, hvorledes adresser skrives. (Bekendtgørelsen handler f.eks. også om etage- og dørbetegnelser.)
Avatar billede Jan Hansen Ekspert
12. september 2019 - 21:40 #14
denne ver. fanger de fleste :
se række 18 og ned er med UDF
https://www.dropbox.com/s/0hp66bvapfrmt3g/split%20tekst.xlsm?dl=0
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester



IT-JOB