Avatar billede gylling Juniormester
22. oktober 2015 - 17:35 Der er 14 kommentarer og
1 løsning

Gem filter

Jeg har en tabel hvor jeg instiller filter. Er det muligt at når tabellen/formularen så gemme det filter jeg havde indstillet?
Avatar billede terry Ekspert
22. oktober 2015 - 17:55 #1
Maybe we'll end up waiting another year to get a response!
Avatar billede terry Ekspert
22. oktober 2015 - 17:57 #2
Avatar billede gylling Juniormester
22. oktober 2015 - 20:47 #3
Det håber jeg ikke terry. Men har det ikke været på toppe de sidste par år så har desværre ikke fået slette min spørgsmål. Det må du undskyde
Avatar billede terry Ekspert
23. oktober 2015 - 09:10 #4
But it seems you place questions which you dont participate in and then end up closing them.

So why should we use our time?

http://www.eksperten.dk/spm/1003914#reply_8198669
Avatar billede gylling Juniormester
23. oktober 2015 - 12:34 #5
Kan du hjælpe eller ikke. Ellers finde jeg nok en løsning
Avatar billede bvirk Guru
23. oktober 2015 - 13:13 #6
i forlængelse af # 2:
Det er vidensdeling på engageret niveau der forgår her på eksperten - ved oprettelse af profil accepterer man ifølge:
punkt 10. i http://www.eksperten.dk/brugerbetingelser

"Finder man selv svaret på sit spørgsmål, og dermed ønsker at tage de udlovede point retur, er man forpligtet til at skrive, hvordan problemet blev løst. Det kan f.eks. være et link eller en nærmere beskrivelse. Ekspertens grundlag bygger bl.a. på de svar, der er på de mange spørgsmål. Derfor er ens egen løsning også til gavn for andre."

Der er dermed ikke noget der hedder at "slette spørgsmål"
Avatar billede terry Ekspert
23. oktober 2015 - 13:45 #7
gylling, we are here to help, but you have to participate otherwise its very difficult.

"Er det muligt at når tabellen/formularen så gemme det filter jeg"

Well it all depends on what your trying to do, but the easiest way is just turn the filter off and on, switching it off doesn't reset it to empty, so the filter is still there ready for use later by switching it on again.

You could also just save it in a table when you close the form and then re-load it when you open.
Avatar billede bvirk Guru
27. oktober 2015 - 10:13 #8
Access gemmer et filter for hvert eneste formular og de  tabeller hvor man har brugt filtreret dataark visning på.

Hvis man, anvendende en formular eller tabels dataark visning, måske lang tid siden sidst, ikke bliver klogere af at trykke 'anvend filter' - ikon: tragten! så viser 'filtere efter formular' - ikon: tragten foran en formular lidt mere om det.

Lidt iagtagelser om gemte filtre:

Prøv blot at kigge på MSSysObjects  (valgt synligt under funktioner->indstillinger->vis->systemobjekter) sorteret faldenende på DateUpdate før og efter skabelsen af en formular - filternavnet indledes med ~sq_f her hos mig. Prøv så at lave en forespørgslen
SELECT Name, DateCreate, DateUpdate FROM MSysObjects WHERE type=5
og konkluder! - kig på klokken før diverse ændringer.
Avatar billede terry Ekspert
27. oktober 2015 - 11:15 #9
Seems as though he's done a runner again...
Avatar billede gylling Juniormester
27. oktober 2015 - 19:43 #10
Hej

Jeg ved ikke om det har noget med jeres forslag at gøre.

Men jeg har inde i formularen egenskabsark -> Data under Filter har jeg sagt ja. Og felte er et opslags felt der så gennem valget man har foretaget.
Avatar billede terry Ekspert
28. oktober 2015 - 09:26 #11
Avatar billede bvirk Guru
28. oktober 2015 - 09:39 #12
Som F1 hjælpen og også simple eksperimenter viser, har tilladfiltre  egenskaben (under egenskabsark->data for formularer) kun betydning for tilgangen til at anvende filtre vha. værktøjsknapper og menuer.
Opresumeret, kan man sige at filtre i access gemmes automatisk - man skal ikke selv håndtere at gemme filtertilstande.

Ikke at forveksle med en ANDEN ting - filteron værdien! Her har man valgt fra Microsofts side, at man altid åbner en formular med filteret deaktiveret (filteron=false) - med andre ord: man ser som udgangspunkt alle poster.

Hvis man ønsker at formularer åbner med samme filtertilstand som den blev lukket  må man selv sørge for det. Eksempelvis:

Tabel: MyFilterOnOpen (formN Tekst,state ja/nej)

Const MyFilterOnOpen = "MyFilterOnOpen"
Function myFilterStateIsPersistent()
    myFilterStateIsPersistent = DCount("formN", MyFilterOnOpen, "formN=""" & name & """")
End Function

Const MyFilterOnOpen = "MyFilterOnOpen"

Private Sub Form_Close()
    Dim sql
    If myFilterStateIsPersistent Then
        sql = "update " & MyFilterOnOpen & " set state =" & FilterOn & " where formN=""" & name & """"
    Else
        sql = "insert into " & MyFilterOnOpen & "(formN,state) values(""" & name & """," & FilterOn & ")"
    End If
    CurrentDb.Execute sql
End Sub

Private Sub Form_Open(Cancel As Integer)
    If myFilterStateIsPersistent Then FilterOn = DLookup("State", MyFilterOnOpen, "formN=""" & name & """")
End Sub
Avatar billede terry Ekspert
28. oktober 2015 - 09:37 #13
If you read the link it says.

"You can use the Filter property to save a filter and apply it at a later time. Filters are saved with the objects in which they are created. They are automatically loaded when the object is opened, but they aren't automatically applied"


So, if you filter a form and then close the form, the filter property is loaded with the previous filter. But you need to apply the filter by setting the filter to on

Me.FilterOn = True, or pressing the Toggle Filter in the menu.
Avatar billede bvirk Guru
28. oktober 2015 - 09:42 #14
Rettelse til #13

Const MyFilterOnOpen = "MyFilterOnOpen"

skal kun i en gang øverst i formens objektmodul - brugte ellers preview adskillige gange ;)
Avatar billede gylling Juniormester
04. februar 2016 - 11:04 #15
Jeg har inde i formularen egenskabsark -> Data under Filter har jeg sagt ja. Og felte er et opslags felt der så gennem valget man har foretaget.
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
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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