26. april 2010 - 21:51Der er
4 kommentarer og 1 løsning
Events der fyrer naar der klikkes paa en tab.
I en Access 2007 application der handler om personer har jeg i en formular Zoeken anbragt et antal knapper der hver isaer ved klik resulterer i at en rapport aabnes. For eksempel er der paa formularen en listbox med navne paa aktivitetsgrupper, og efter valg af en eller flere grupper og tryk paa en "soeg grupper" knap aabnes rapporten rptGrupper med oplysninger om de personer der er tilmeldt de valgte grupper. Ved klik paa Zoeken tabben kommer man tilbage til Zoeken og kan vaelge at aabne andre rapporter.
Jeg vil saa, efterhaanden som brugerne aabner nye rapporter, automatisk lukke de gamle rapporter saa der kun er en rapport aaben ad gangen. Jeg har derfor lavet denne procedure:
Private Sub closereports() Do While Reports.Count > 0 DoCmd.Close acReport, Reports(0).Name, acSaveNo Loop End Sub
Foreloebig lukkes rapporterne ved at hver sub der aabner en rapport starter med et kald til closereports. Og det virker fint. Men jeg ville hellere at rapporterne lukkes allerede naar man klikker paa Zoeken tabben. Til den ende har jeg en Sub Form_Current(), en Sub Form_GotFocus() og en Sub Form_Load() efter dette moenster:
Private Sub Form_Current() closereports End Sub
men rapporterne lukkes ikke naar Zoeken aabnes, foerst naar en ny rapport dannes.
Hvis jeg derimod har Zoeken og en rapport aaben og jeg saa vaelger designmode for Zoeken og derefter gaar tilbage til formularmode saa lukkes rapporterne.
Ved nogen hvilken event (hvis der fyrer naar jeg klikker paa tabben Zoeken og som jeg kan bruge til at kalde closereports eller hvordan jeg ellers kan gribe det an?
Teknologi, AI og forretning er i centrum på Computerworlds Cloud og AI Festival i København d. 18. og 19. september. Se hele programmet for den store konference om strategisk brug af Cloud og AI på: www.cloud-festival.dk
I did not get it with TabControls, but I understood that the gist was to use an event that fires when the active page changes. So I searched further and found the event that in my dutch-language system is called Form_Activate. And it works. With the code:
Private Sub Form_Activate() closereports End Sub
the reports and forms that were opened from the form Zoeken are closed when I click on the Zoeken tab in order to return to that formular. So I have now deleted all the closereports instructions in the individual subs.
So I had further work to do on my own, but it succeeded thanks to the inspiration from your response. Thanks again.
(I saw your #1 around 0900 and said "take your time," but Experten seemed to swallow the comment so when around noon I did not see it I sent it again, hoping that it would not duplicate.)
Hi Christian Maybe I misunderstood the original question?
"Events der fyrer naar der klikkes paa en tab"
As far as I can make out, Form_Activate is an event which occurs on the form not on the tab control.
There should be an event which fires when the active tab changes although if you click on the same tab then its not going to fire.
Anyway that isnt import. If you got something working then great.
and thanks for the points.
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.