Avatar billede Spotgun Seniormester
04. oktober 2005 - 16:21 Der er 7 kommentarer og
1 løsning

Postnummer opslag returnerer bynavn

Lad mig starte med at sige at jeg ikke rodet så frygteligt meget med Excel VBA før, men har masser af kendskab til Visual Basic / VB Script generelt.

Jeg skal bruge et excel-ark, hvor man bl.a. har mulighed for at indtaste et postnummer. Jeg forestiller mig at det må være muligt, når man går væk fra cellen med postnummeret, at der via en makro slåes op i en postnummer tabel (den funktion skulle jeg nok selv kunne stykke sammen), hvorefter bynavnet returneres, og automatisk sættes ind i cellen umiddelbart til højre for den man har indtastet postnummeret i.

Det må vel være muligt at lave sådan et regneark, hvor brugeren bliver sparet for lidt bøvl. Spørgsmålet er bare hvordan det nemmest løses.

Det er jeg på jagt efter, er egentligt blot hvordan jeg holder øje med hvornår en cell i en bestemt kolonne redigeres, og når det er sket, skal mit postnummer/by-opslag indsættes ved siden af.
Avatar billede Spotgun Seniormester
04. oktober 2005 - 16:22 #1
Rettelse til sidste afsnit:

* hvornår en TILFÆLDIG celle i en BESTEMT kolonne redigeres
Avatar billede jkrons Professor
04. oktober 2005 - 16:24 #2
Det behøver du ikke en makro til.

I Ark2 kan du have din postnummertabel (postnr og by i to kolonner). Navngiv området fs Post.

I Ark1, fx A1, indtaster du postnummeret. I B1 laver du denne formel: =LOPSLAG(A1;Post;2;FALSK)

Så indsættes der automatisk et bynavn, når du taster et postnummer i A1. Ret selv til relevante celler.
Avatar billede Spotgun Seniormester
04. oktober 2005 - 16:25 #3
Jamen det lyder sgu da nemt. Jeg prøver at rode lidt med det i aften!
Avatar billede jkrons Professor
04. oktober 2005 - 16:27 #4
Helt Ok.
Avatar billede jkrons Professor
04. oktober 2005 - 16:36 #5
Hvis du gerne vil lave detv via en makro, vil nwedenstående kode teste om der bliver indtastet et tilfældigt stede i A-kolonnen og så indsætte en værdi i samme række i B-kolonnen. Du må selv erstatte værdien med de6t rigtige bynavn :-)

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("a:a")) Is Nothing Then
        Target.Offset(0, 1).Value = "Indsæt bynavn her"
    End If
End Sub

Koden skal være i arkets kodemodul.
Avatar billede Dan Elgaard Ekspert
04. oktober 2005 - 17:56 #6
Sådan skal det gøres:

http://www.excelgaard.dk/excelgaard/opslagstabeller/


mvh.,
Pistolprinsen
Avatar billede Spotgun Seniormester
05. oktober 2005 - 09:38 #7
jkrons - smider du et svar? Det var lige hvad jeg skulle bruge...
Avatar billede jkrons Professor
05. oktober 2005 - 15:05 #8
Velbekomme :-)
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
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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

Seneste spørgsmål Seneste aktivitet
I går 21:00 Libre Office Impress Af Frank i Andre styresystemer
I går 11:47 VB script Af Jenshentze i Word
I går 11:21 Popup ved opstart Af mort1 i Windows
04/0918:50 Slet lokal konto Af ErikHg i Windows
04/0916:05 Ændre tal i en celle Af xvid i Excel