Avatar billede 44nato44 Nybegynder
10. marts 2009 - 19:00 Der er 7 kommentarer

kan ikke lave to filtre

Hej

Jeg har et filter på min form plus på min subform som jeg har på hovedformen, men jeg kan kun filtre på en af dem... er det bare mig eller ?

Det er min kode forneden, ved ikke om det giver menning ?

SearchID = Right(Me.OpenArgs(), Len(Me.OpenArgs()) - 3)

Me.Form.Filter = "ID = " & CInt(SearchID)
Me.Form.FilterOn = True

' Related tasks

Dim db As DAO.Database
Dim tblRst As DAO.Recordset
Dim ds()
Dim frm As Form

Set db = CurrentDb()

  Set tblRst = db.OpenRecordset("TBL_CaseRelation", dbOpenDynaset)
TotalRecSet = 0
Do While Not tblRst.EOF
TotalRecSet = TotalRecSet + 1
tblRst.MoveNext
Loop

tblRst.MoveFirst
ds = tblRst.GetRows(TotalRecSet)
   
    tblRst.Close
    Set tblRst = Nothing

x = 0

For i = LBound(ds, 2) To UBound(ds, 2)

If ds(1, i) = Me.ID.Value Then

strfilter = "ID = " & ds(2, i) & " AND "

End If

Next

If Len(strfilter) <> 0 Then

lngLen = Len(strfilter) - 4
strfilter = Left(strfilter, lngLen)

Set frm = Me.TBLTaskssubform.Form

frm.Filter = strfilter
frm.FilterOn = True

End If

Me.TBLTaskssubform.Requery
Avatar billede mugs Novice
10. marts 2009 - 19:13 #1
Blot et skud fra hoften:

Når du arbejder i formularer og underformularer, skal du betragte formularerne som forskellige objekter.

Prøv at rette denne:

Set frm = Me.TBLTaskssubform.Form

til:

Me.TBLTaskssubform.setfocus

så er du sikker på, at du arbejder i underformularen. strfilter erklærer du i Parentform, og jeg er ikke sikker på, at du kan referere til den direkte fra underformularen. Prøv at refererer til parentform og derefter strfilter:

Me.filter = Me.parentform.strfilter
Me.filterOn = True
Avatar billede 44nato44 Nybegynder
11. marts 2009 - 00:03 #2
jeg har også prøvet at lægge koden ind i subformen.. på event current, men der virker det heller ikke, selv om jeg hard koder det.

Har du måske en anden ide ?
Avatar billede mugs Novice
11. marts 2009 - 07:37 #3
Denne kode er lagt ind på en knap i Parentform og filtrerer subform efter feltet kundeemne (alfanumerisk) i Parentform:

Me!subform.Form.Filter = "kundeemne =  '" & kundeemne & "'"
Me!subform.Form.FilterOn = True

Samme med numerisk kriterie:

Me!subform.Form.Filter = "kundeemne =  " & kundeemne & ""
Me!subform.Form.FilterOn = True
Avatar billede 44nato44 Nybegynder
11. marts 2009 - 11:15 #4
paa en eller anden maade saa virker det heller ikke, nu har jeg genskabt formen med nyt navn.. og nu naar jeg gaar ind paa min parentform og den filter paa det nummer jeg har valgt. saa i sub formen giver ogsaa en record med samme nummer som er i den tabel.

Jeg har sat subformen til ikke at filter on load, men den ser ud til at goere det alligevel ?

Har du en ide, ellers saa laver jeg bare en anden form og smider det hele der ind.. jeg troede bare jeg kunne lave det lidt smartere  :)

Mange tak for hjaelpen indtil videre mugs
Avatar billede mugs Novice
11. marts 2009 - 13:02 #5
Check om du har overordnede - og underordnede felter. I givet fald så fjern dem.
Avatar billede 44nato44 Nybegynder
11. marts 2009 - 15:14 #6
bare lige for at lyde dum, hvad er det ?

Min access er engelsk.
Avatar billede mugs Novice
11. marts 2009 - 15:26 #7
I underformularen er der 2 egenskaber der binder underformularen til Parentform. Hvis du har et felt i begge formularer f.eks. et firmanavn, ndu med denne egenskab binde underformularen til kun at vise de poster, der er tilknytt firmanavnet i Parentform.
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