[Access 2003] Naar record springen

Pagina: 1
Acties:

  • Hmail
  • Registratie: April 2003
  • Laatst online: 20:49

Hmail

Doet ook maar wat.

Topicstarter
In Access heb ik het volgende formulier gemaakt:

http://www.pix8.net/pro/pic.php?u=3757ucvJw&i=852107

Ik wil dat wanneer de gebruiker op het knopje naast de melding klikt, bijvoorbeeld Melding 1936, dat Access een nieuw formulier opent waarin de melding beter beschreven staat. Echter, als ik op de knop klik wordt het formulier wel geopend, maar Access springt niet naar de juiste melding, maar naar het laatste record. Ik gebruik deze code:
Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Private Sub Open_melding_Click()

    Dim stDocName As String
    Dim stLinkCriteria As String
    Dim rst As DAO.Recordset

    stDocName = "Meldingen_Better"
    stLinkCriteria = "[melding_ID] = " & Me![melding_ID]
    MsgBox stLinkCriteria
    DoCmd.OpenForm stDocName
    
    Set rst = Me.RecordsetClone
    rst.findfirst stLinkCriteria
    If rst.nomatch Then
    MsgBox "Er is iets fout gegaan!"
    Else
    Me.Bookmark = rst.Bookmark
    MsgBox "Hier kom ik wel!"
    End If
    rst.Close
    Set rst = Nothing

De MsgBox “Hier kom ik wel!” word wel weergegeven :?
Heeft iemand enig idee wat ik over het hoofd zie?
Ik kan het formulier natuurlijk openen met DoCmd.OpenForm stDocName, en daarin aangeven welk record ik wil openen, maar dan kan ik niet heen en weer bladeren tussen de andere records.

[ Voor 16% gewijzigd door Hmail op 26-04-2006 14:35 ]

It might sound as if I have no clue what I'm doing, but I actually have a vague idea.


  • Witte
  • Registratie: Februari 2000
  • Laatst online: 22-07 13:36
Iets van:

code:
1
2
3
4
5
6
7
8
9
10
Set rst = form![stDocName].RecordsetClone 
    rst.findfirst stLinkCriteria 
    If rst.nomatch Then 
    MsgBox "Er is iets fout gegaan!" 
    Else 
    form![stDocName].Bookmark = rst.Bookmark 
    MsgBox "Hier kom ik wel!" 
    End If 
    rst.Close 
    Set rst = Nothing

Houdoe


  • Boss
  • Registratie: September 1999
  • Laatst online: 28-07 14:18

Boss

+1 Overgewaardeerd

Ik zou bij DoCmd.OpenForm de parameter meegeven zodat er wordt gefilterd op het gewenste record. (where - parameter).

Heb je al dat gedonder met bookmarks en recordsets niet.

The process of preparing programs for a digital computer is especially attractive, not only because it can be economically and scientifically rewarding, but also because it is an aesthetic experience much like composing poetry or music.


  • Hmail
  • Registratie: April 2003
  • Laatst online: 20:49

Hmail

Doet ook maar wat.

Topicstarter
Dat moest dus Forms![Meldingen_Better] wezen, volgens mij ben ik op de goeie richting, alleen werkt het nog niet... Ik krijg nu:
Not a valid bookmark.
Boss schreef op woensdag 26 april 2006 @ 14:48:
Ik zou bij DoCmd.OpenForm de parameter meegeven zodat er wordt gefilterd op het gewenste record. (where - parameter).

Heb je al dat gedonder met bookmarks en recordsets niet.
Dat kan wel, maar dan kan ik niet heen en weer bladeren tussen de andere records, zoals ik in mijn TS al aangaf ;)

[ Voor 60% gewijzigd door Hmail op 26-04-2006 15:16 ]

It might sound as if I have no clue what I'm doing, but I actually have a vague idea.


  • Hmail
  • Registratie: April 2003
  • Laatst online: 20:49

Hmail

Doet ook maar wat.

Topicstarter
Ik heb het opgelost dankzij Witte _o_
Witte schreef op woensdag 26 april 2006 @ 14:45:
Iets van:

code:
1
2
3
4
5
6
7
8
9
10
Set rst = Forms![Meldingen_Better].RecordsetClone 
    rst.findfirst stLinkCriteria 
    If rst.nomatch Then 
    MsgBox "Er is iets fout gegaan!" 
    Else 
    Forms![Meldingen_Better].Bookmark = rst.Bookmark 
    MsgBox "Hier kom ik wel!" 
    End If 
    rst.Close 
    Set rst = Nothing
Bovenstaande code loste het probleem op :)

It might sound as if I have no clue what I'm doing, but I actually have a vague idea.


  • Boss
  • Registratie: September 1999
  • Laatst online: 28-07 14:18

Boss

+1 Overgewaardeerd

Chip! schreef op woensdag 26 april 2006 @ 14:51:
[...]
Dat kan wel, maar dan kan ik niet heen en weer bladeren tussen de andere records, zoals ik in mijn TS al aangaf ;)
Ah, weer het bekende verhaal van 'eerst lezen en dan pas antwoorden' :)

The process of preparing programs for a digital computer is especially attractive, not only because it can be economically and scientifically rewarding, but also because it is an aesthetic experience much like composing poetry or music.

Pagina: 1