18. december 2013 - 17:20Der er
8 kommentarer og 1 løsning
Flet regneark med Accesdatabase
I excel har jeg en kolonne med serienumre, og en kolonne med en egenskab ved serienumrene. I Access har jeg en kolonne med serienumre. Min opgave er at få egenskaben som står i excel overført til en ny kolonne i databasen. serienummert er så nøglen til placeringen. Hvordan løses det?
- Opret et link til dit Excel ark via Eksterne data. - Herefter optræder Excel arket som en tabel i Access. - Opret en forespørgsel, som knytter din Access-tabel og din Excel-tabel sammen via serienummeret. - Ret forespørgslen til en opdateringsforspørgsel og indsæt opdateringsparametrene (sæt Access-tabellens vareegenskab lig Excel-tabellens).
- Opret et link til dit Excel ark via Eksterne data. Klik på "Eksterne data", vælg Excel, vælg Opret kæde og udpeg filen og arket.
- Herefter optræder Excel arket som en tabel i Access.
- Opret en forespørgsel, som knytter din Access-tabel og din Excel-tabel sammen via serienummeret. Vælg Opret/Forespørgselsdesign. Dobbeltklik på de to tabeller, så vises de i forespørgselsbilledet. Klik Luk. Træk nu med musen fra serienummeret i den ene tabel over til serienummeret i den anden tabel. Access viser en streg (en relation mellem de to tabeller).
- Ret forespørgslen til en opdateringsforspørgsel og indsæt opdateringsparametrene (sæt Access-tabellens vareegenskab lig Excel-tabellens). Vælg Design/Opdater. Herved ændres forespørgselstypen. Træk feltet Vareegenskab fra Access-tabellen ned i forespørgselsgitteret. I linjen "Opdater til" skriver du [Excelarknavnet].[Vareegenskab] (altså tabel- og feltnavnet på det felt, som du vil opdatere vareegenskaben til)
(ret selv tabel- og feltnavne så de passer med din base)
... og... ja, opgaven kan løses med VBA; men det vil være mere bøvlet. Du kan, når du har forespørgslen på plads, vælge Vis/SQL. Her ser du forespørgslen på SQL form. Du kan sagtens udføre sådan en SQL sætning via VBA:
DoCmd.SetWarnings False 'Kør uden brugerindblanding DoCmd.RunSQL "UPDATE ..." DoCmd.SetWarnings True
Yep. Når du har oprettet din forespørgsel, klikker du på "Design" i toppen af skærmen. Så kan du vælge forskellige forespørgselstyper på båndet. Klik på "Opdater". Så ser du at Access smider en ny linje ind nede i forespørgselsgitteret, "Opdater til". Det er i denne, du skal skrive den værdi, som du vil opdatere til. OK? Herfra burde du kunne følge opskriften i #3
Et VBA eksempel? Jamen det har du jo allerede fået i #4. Hvis du for eksempel vil køre opdateringen ved et tryk på en knap, er det helt enkelt: - Opret en knap på en formular. - I knappens VedKlik hændelse lægger du koden fra #4, hvor SQL udtrykket er det, som du kan se hvis du vælger Vis/SQL i din forespørgsel.
Synes godt om
Ny brugerNybegynder
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.