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?
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
- 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.