webForumDet fria alternativet

Dynamisk rapport i VB

6 svar · 304 visningar · startad av Jester

JesterMedlem sedan sep. 200188 inlägg
#1

Hej

Går det att skapa en tillfällig rapport med ett VB-script?
Frågan som rapporten skall bygga på ändras beroende på urvalskriteriet så därför måste rapporten skapas varje gång man vill ha den.

InsiderMedlem sedan jan. 2000978 inlägg
#2

Om frågan väljer ut alla personer med namn='LARS' så ändrar du värdet 'LARS' till [Ange namn]. (tex) Då kommer det komma upp ett formulär när du öppnar rapporten så man kan ange namn.

Förstod jag dig rätt??

Engine^Medlem sedan dec. 20003 887 inlägg
#3
DoCmd.OpenReport "[i]Rapportnamn[/i]", acViewPreview, , "[i]kolumnnamn[/i] = [i]kriteriet[/i]"

Kolla mer i Accesshjälpen för kommandot.

JesterMedlem sedan sep. 200188 inlägg
#4

Engine^: Öppnar inte den bara en befintlig rapport?

Det bygger på en korsfråga där både rader och kolumner är dynamiska. Gör jag en rapport så fångar den bara kolumnerna vid det tillfället då rapporten skapas. Därför måste jag skapa rapporten, själva mallen, varje gång...tror jag iaf...eller finns det något annat sätt?

InsiderMedlem sedan jan. 2000978 inlägg
#5

Jester skrev:

...Gör jag en rapport så fångar den bara kolumnerna vid det tillfället då rapporten skapas. Därför måste jag skapa rapporten, själva mallen, varje gång...

Jag är inte så säker på att detta stämmer. Det har inte funkat så när jag gjort rapporter iaf.

Varför vill du använda VB? Testade du mitt förslag?
Jag TROR att den koden Engine^ skrev gör samma sak som det jag skrev först.

JesterMedlem sedan sep. 200188 inlägg
#6

Du har nog missförstått mig. Eftersom det är en korsfråga så skapas kolumnrubrikerna efter värdet i en tabell som kan ändras av användaren. När jag skapar rapporten, som bygger på korsfrågan, kommer endast de kolumner som förnärvarande finns i frågan upp i rapporten.

Lägger jag till ytterliggare en post i tabellen som skapar kolumnrubriker, så syns inte den kolumnen i rapporten. Den måste således uppdateras i rapportmallen med den extra kolumnen. Antingen finns det något sätt att uppdatera en rapportmall eller så måste jag, varje gång jag vill skriva ut rapporten, också skapa mallen på nytt.

Nu har jag inte ännu kollat ingående på Engine^s förslag men mellan tummen och pekfingret, så tror jag att den bygger på att rapportmallen redan finns.

Anledningen till att jag vill använda VB är att Makrofunktionerna är buggiga samt att jag vill lära mig :)

Engine^Medlem sedan dec. 20003 887 inlägg
#7

Jester skrev:

Engine^: Öppnar inte den bara en befintlig rapport?

Det bygger på en korsfråga där både rader och kolumner är dynamiska. Gör jag en rapport så fångar den bara kolumnerna vid det tillfället då rapporten skapas. Därför måste jag skapa rapporten, själva mallen, varje gång...tror jag iaf...eller finns det något annat sätt?

Hmm... så mycket mer komplex frågan blev. Du har helt rätt i att OpenReport öppnar en befintlig rapport, men om du bygger upp den smart kan du nog komma undan med det.

Jag har lite dåligt med tips på detta område, eftersom jag aldrig försökt skapa en rapport baserad på en crosstab query. Och det är för tidigt på morgonen än för mig att orka hålla på och pilla med något sådant ;)

132 ms totalt · 3 externa anrop · v20260731065814-full.0e50b1ef
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)