Avatar billede scheegell Novice
03. august 2011 - 09:08 Der er 9 kommentarer og
1 løsning

Data fra en formular til en rapport - alt i Access 2007

Har designet en formular, hvor der søges efter dokumenter.
Dokumentets data og et billede af dokumentet vises på siden.
Samtlige af søgeresultatets data incl. billede skulle gerne overføres til en rapport, som er designet således, at alle data vises. Rapporten skal så kun udskrive den fundne post.
Jeg kan ikke finde en "knap", der kan overføre søgeresultatet fra formularen til rapporten.
Avatar billede Slettet bruger
03. august 2011 - 09:55 #1
Der kan laves forespørsel som afspejler feltindholdet i fundne post på formularen idet den i sin betingelse medtager søgeresultatets værdi  af et unikt felt (id) fra den åbne formulars datakilde.

Et eksempel:
En formular 'Vare' har en datakilde: 'Vare' som har et felt ID.
Stående på en bestemt post i den åbne formular, vil følgende forspørgsel afspejle posten:

select * from Vare where id=[Forms].[Vare]!id

En raport, der er baseret på denne forespørgsel, har netop den 'ene post'.
Avatar billede mugs Novice
03. august 2011 - 10:31 #2
Som brugeren sjriver, er rapporten designet til at udskrive alle poster, det er således ikke nmødvendigt at lave en forespørgsel mere. Denne kode (hvor kriteriet et flyttet fra forespørgslen til selve udskriftskommandoen) udskriver formularens aktuelle post:

DoCmd.OpenReport "DIN RAPPORT", acViewPreview, , "[DIN TABEL]![ID] = " & Me!ID & ""
Avatar billede scheegell Novice
03. august 2011 - 12:14 #3
Det lyder rigtig flot - MEN, hvor sætter jeg din kode ind?
I formularen, hvor jeg opretter en "Print"-knap???
Avatar billede mugs Novice
03. august 2011 - 12:33 #4
I en kommandoknap på formularen i OnClick hændelse i din VBA-editor.
Avatar billede scheegell Novice
03. august 2011 - 13:13 #5
Jeg lavede en knap i formularen og satte din kode ind under "OnClick" i Visual Basic.
Jeg fik følgende svar:

Access kan ikke finde objektet 'DoCmd'

og under hjælp står der:

Access kunne ikke finde makroen eller VBA-funktionen. Hvis du prøver at kalde en makro, skal du sikre dig, at navnet på makroen og navnet på makrogruppen er stavet korrekt.
Benyt følgende syntaks, hvis du prøver at kalde en brugerdefineret VBA-funktion:
=Funktionsnavn() eller =Funktionsnavn(argument1,argument2,...)
Sørg for, at funktionen er en af følgende:
Defineret i koden til formularen eller rapporten.
eller
En offentlig funktion, der findes i et modul (ikke et klassemodul).

Den kan tilsyneladende ikke udføre kommandoen Åben Rapport.
Avatar billede mugs Novice
03. august 2011 - 13:24 #6
Nok er koden taget fra ACC 2003 eksempel, men den er ofte benyttet i 2007 udgaven. Hvis du lægger din e-mail, sender jeg et eksempel. Det kunne også være rart at se din fulde kode.
Avatar billede scheegell Novice
03. august 2011 - 13:38 #7
min mail er:
frank@scheegell.dk

Jeg kan eksportere knappens egenskaber ud til en cls-fil, hvis du kan bruge den til noget.
Avatar billede mugs Novice
03. august 2011 - 13:45 #8
Eksempel sendt.
Avatar billede scheegell Novice
04. august 2011 - 07:31 #9
Eksempel modtaget.
Meget anvendelig.
Sagen slut.
Avatar billede mugs Novice
04. august 2011 - 07:39 #10
Tak for point.
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

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