Gå til innhold

Programmering i Excel


Anbefalte innlegg

Skrevet

Hei

 

Beklager dersom denne tråden er lagt i feil forum, men er usikker på hvor jeg skal legge den...

 

Uansett - her er problemstillingen jeg håper noen kan hjelpe meg med å løse:

 

Jeg har to ark med informasjon jeg ønsker å slå sammen -

 

Ark 1 inneholder en kolonne med "Navn" og en kollonne med "Number". Nummer fungerer som id for navnet, altså er det bare en forekomst i dette arket hvor et bestemt "Number" dukker opp.

 

Ark 2 inneholder veldig mange rader, og mange kollonner med forskjellig type informasjon. Radene inneholder derimot kun "Number" og ikke "Navn".

 

Det jeg ønsker å gjøre er i Ark 2 å legge til en kolonne hvor tilhørende Navn kommer ved siden av Number. Det er mange rader som har samme Number (og som skal ha det samme navnet i dette arket)

 

Siden det er i underkant av 20.000 rader med informasjon, og nesten 500 unike Navn med tilhørende Number, hadde det vært greit å finne en formel som kan gjøre dette automatisk.

 

Håper noen kan hjelpe :)

Videoannonse
Annonse
Skrevet
Håper noen kan hjelpe :)

 

Legge alt over i en database, og bruke dette som en dynamisk data-kilde?

 

Dette høres jo egentlig mer ut som database-mat.

 

Hei og takk for svar :)

 

Jeg hadde en mistanke om at det var det - og skal se om jeg får løst problemet i acces. Men da må jeg få it-avdelingen til å installere det først, og det kan jo ta litt tid... :D

 

Så om noen vet om en måte å gjøre det i Excel ville det vært det enkleste...

Skrevet
Men hvordan løser jeg problemet i feks acces? Kan jo ta fila med hjem og bruke acces der... ;)

 

Enleste er sikkert å laste inn data som to tabeller, og så gjøre en spørring for å hente ut.

 

Da kan du f.eks oppdatere data i Access, og hente ut listen du vil ha i Access/Excel.

 

SELECT t1 nummer, t1.navn, t2.andre, t2.felter, t2.du, t2.vil, t2.ha FROM tabell1 AS t1, tabell2 AS t2 WHERE t1.nummer = t2.nummer;

 

Noe sånt?

 

Kan også lage ett view, slik at du kan oppdatere tabell1 og tabell2, og så ha tabell3 som gir deg flettet, uten at du må gjøre spørringen for hver gang.

Skrevet

Dette går fint i Excel Her er et eksempel på et regneark der jeg har gjort det tilsvarende. Selvasgt er det mye færre data her enn det du har, men det er ikke noe problem å skalere det opp.

Jeg antar at du kanskje ikke har ID tallene i rekkefølge og at hver er forskjelig

Book1.zip

Skrevet (endret)

Her ville jeg nok anbefalt å legge fra deg Excel og heller benytte et RDBMS (Access, mySQL), men da datamengden ikke er så forskrekkelig uoverkommerlig, er det muligens ikke enda utenfor Excels arbeidsområde.

 

I alle tilfeller kan du oppnå dette ved å bruke funksjonene innunder Lookup & Reference (Oppslagsfunksjoner), eksempelvis VLOOKUP (SLÅ.OPP):

=VLOOKUP(A2;Sheet1!$A$2:$B$4;2)

Dette legges i "Navn"-kolonnen i Ark2 hvor A-kolonnen er "Number"-kolonnen. Merk at Sheet1 (Ark1) MÅ ha "Numbers" i kolonne A og "Navn" i kolonne B (dvs. at "Numbers" kommer før "Navn", ikke motsatt). I tillegg må Ark1 være sortert etter kolonne A.

Endret av aadnk
Skrevet
I tillegg må Ark1 være sortert etter kolonne A.

 

Du slipper unna denslags ved å kreve eksakt treff via fjerde parameter:

=VLOOKUP(A2;Sheet1!$A$2:$B$4;2;FALSE)

Det virker ellers som en databasejobb, ja, ikke en Exceljobb. Hva er det denne applikasjonen skal gjøre og hvorfor?

 

Beste hilsen Harald

Skrevet
I tillegg må Ark1 være sortert etter kolonne A.

 

Du slipper unna denslags ved å kreve eksakt treff via fjerde parameter:

=VLOOKUP(A2;Sheet1!$A$2:$B$4;2;FALSE)

Det virker ellers som en databasejobb, ja, ikke en Exceljobb. Hva er det denne applikasjonen skal gjøre og hvorfor?

 

Beste hilsen Harald

 

Hmm - virker ikke helt enda, men får vel knotet det til...

 

SKal bruke arket til tellinger, så jeg ser at det vil være mest hensiktsmessig med Access, men har ikke det programmet på tynnklienten jeg jobber mot. Ikke får jeg innstallert det heler. Må vente til it-avdelingen har gjort jobben sin ...

Skrevet

Funksjonen heter FINN.RAD i norskspråklig Excel. Og FALSE heter USANN.

 

Skal du telle, blir ikke logikken tvert om ? Ikke spre samme navn utover i den lange lista, men telle forekomster av id-numre der og overføre til den korte lista ? Den funksjonen heter i så fall COUNTIF eller ANTALL.HVIS.

 

HTH. Beste hilsen Harald

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...