Avatar billede the.prince Nybegynder
29. januar 2003 - 15:33 Der er 8 kommentarer og
1 løsning

Data fra Access til Excel regneark

Hejsa,

Jeg spekulerede på om det er muligt at lave en database i Access, hvor man kan oprette f.eks. en produktdatabase, og så kede denne sammen med et bestemt regneark, således at hvis man skriver et bestemt produktnr., så henter den automatisk oplysninger fra databasen om navn, pris osv.

Håber i kan hjælpe.

Med venlig hilsen, Kenneth Rasmussen
Avatar billede martin_moth Mester
29. januar 2003 - 15:37 #1
Yep - det kan du!

Ud kan via en macro i Excel connecte til din database. Se http://www.eksperten.dk/spm/296411, der burde gøre det meste for dig. Har du brug for mere hjælp, så kom igen...
Avatar billede sjap Praktikant
29. januar 2003 - 17:46 #2
Det kan også gøres relativt enkelt i følgende to trin:

Når du har oprettet tabellen i Access, kan du kopiere tabellen til Excel (vælg Rediger/Indsæt speciel og husk at markere indsæt kæde). Så har du et regneark med en kæde til din databasetabel.

I Excel kan du så markere den første række (der indeholder tabellens feltnavne) og vælge menuen Data/Filter/Autofilter.
Avatar billede sjap Praktikant
29. januar 2003 - 17:52 #3
I Excel kan du selvfølgelig også bruge funktionen Avanceret Filter i stedet for Autofilter. Det afhænger af hvor kompliceret din forespørgsel i datatabellen er.
29. januar 2003 - 18:12 #4
Indsæt en kopi af Access-tabellen med en kæde til kilde-data som superjap nævner det.

Brug herefter =LOPSLAG() til at slå op i tabellen og hente oplysninger herfra om navn, pris osv. som du nævner.
Avatar billede the.prince Nybegynder
29. januar 2003 - 18:17 #5
Det forstår jeg ikke... Hvordan gør man det??? Jeg forstår ikke hvordan jeg skal kære dem sammen, og hvordan jeg skal få den til at hente... Mere detaljeret beskrivelse ønskes...
29. januar 2003 - 18:29 #6
Hvis vi forestiller os at data fra Access er indsat på Ark2 i område A1:C100, bruger du =LOPSLAG() på denne måde.

Ark1:
  A      B      C
1 Nr.  Navn  Pris
2 10    ABC    9,85
3 20    BCA    7,50
4 30    CAB    2,40

Ark2:
I A1 Indtaster du et varenr: 10

I B1 vil du gerne se varens navn, og indtaster: =LOPSLAG(A1;Ark1!$A$1:$C$100;2)
- de 3 oplysninger i parantesen henviser til:
- A1 - den celle hvori du indtaster varenr
- Ark1!$A$1:$C$100 - der hvor du har indsat Access-data
- 2 - den kolonne, du vil hente data fra, 1. kolonne=varenr, 2. kolonne=varenavn, 3. kolonne= pris

I C1 vil du gerne se prisen for varen, og indtaster: =LOPSLAG(A1;Ark1!$A$1:$C$100;3)
Eneste ændring er at 2-tallet er udskiftet med et 3-tal  som sidste parameter i formlen.
Avatar billede sjap Praktikant
29. januar 2003 - 18:59 #7
the.prince

Kæden laves på følgende måde:

- Åbn Access
- Peg på den ønskede tabel og vælg Kopier
- Åbn Excel
- Åbn eventuelt det regneark tabellen skal kædes til - eller brug et nyt
- Gå i menuen Rediger
- Vælg "Indsæt speciel"
- Marker "Indsæt kæde" til venstre på skærmbilledet og tryk OK

Så skulle den kæde være klaret :-)
Avatar billede bak Seniormester
29. januar 2003 - 20:31 #8
Det kan gøres på flere måder. Her er en metode uden VBA-kode. En
Parameterforespørgsel.
Det virker som en længere smøre, men det er kun pga. af detaljeringsgraden.
Dette skal kun gøres een gang.
Jeg forestiller mig at du har skrevet produktnummeret i A2
og ønsker de resterende oplysninger i B2, C2, D2 osv.

1. Under DATA / HENT EKSTERNE DATA / NY DATABASEFORESPØRGSEL vælger du
Access og finder din Database og tabel.
2. På det punkt, der hedder UDFØR skal du vælge "Få vist data eller redigere
forespøgslen i Microsoft Query"
3. Du er nu i Microsoft Query og din tabel og de valgte felter er vist.
4. Under "VIS" vælger du "KRITERIER".
5. Nede I Kriteriefelt vælger du nu med.arb.nr
6. I Værdi skriver du [Test] og trykker Enter. (husk firkantparanteserne)
7. Du bliver nu spurgt om en parameterværdi. Tryk bare OK.
8. Under FILER vælger du RETURNER DATA TIL EXCEL.
9. I den boks der nu fremkommer, vælger du "Parametre..."
10.Du vælger nu "Hent værdien i følgende celle:" og udpeger så A2, hvor du
havde skrevet med.arb.nr
11.Sæt flueben i "Opdater automatisk, når celleværdi ændres" og tryk OK
12.Udpeg så B1 i "Hvor skal dataene anbringes?" og tryk OK

Hver gang du herefter ændrer værdien i A2 slår excel nu op i din
Accessdatabase, og finder de oplysninger du har bedt om.
og placerer disse i B2 : xx
Avatar billede martin_moth Mester
29. januar 2003 - 21:20 #9
the.prince & bak : Ja, så elegant kan det gøres uden VBA (jf. svaret ovenfor fra bak). Så lærte jeg også noget i dag ;o) - jeg kan nu stadig bedst lide at bruge macro-løsningen, da man har meget større frihedsgrader til at manipulere data fra databasen osv... Men er det bare simple opslag, må jeg indrømme, at løsningen fra bak (og de andre også) virker overbevisende :o)
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
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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

Politiets Efterretningstjeneste

Bliv AD-specialist hos PET

Kalundborg Kommune

Data Scientist / udvikler

Udviklings- og Forenklingsstyrelsen

Projektledere til nyetableret PMO-kontor

Udviklings- og Forenklingsstyrelsen

Business Analyst med drive og gåpåmod

Unik System Design A/S

Head of Internal IT