Als je de ontwerpweergave doet in fpuzzels zie je ook maar 1 record waar je iets aan kan wijzigen. Dit zal zo horen anders was dit niet zo gedaan.
Dát heb ik je dus uitgelegd in #47

. Een doorlopend formulier is in feite hetzelfde als een enkelvoudig formulier (je kunt ook probleemloos switchen in de Eigenschappen van Enkelvoudig naar Meervoudig). Er staat dus maar één object van alles op het formulier. Het enige verschil is, dat een doorlopend formulier die objecten
herhaalt.
Maar het probleem dat je beschrijft snap ik niet, want bij mij werkt het perfect! Er is wel een trucje aan te pas gekomen, want je ziet in een doorlopend formulier met minimaal twee records dus meerdere records, en je wilt
per record de juiste afbeelding zien, en in de popup vertonen.
En dáár gaat het dus wat anders, want een niet-afhankelijk object, zoals het Imageframe dat voor de thumbnails wordt gebruikt, is niet aan een record gekoppeld, dus om het juiste record te zien, moet je in het doorlopend formulier eerst dat record geselecteerd hebben. Anders kan de popup niet de juiste foto laten zien.
Daar is dus een trucje voor gemaakt: een
onzichtbare (transparante) opdrachtknop die net zo groot is als de Imageframe, en daar dus volledig overheen valt. In beginsel gebeuren er dus twee acties als je op een foto klikt: je start de VBA code die achter de knop hangt, én je klikt op de popup die de foto opent.
Die onzichtbare knop selecteert eerst het juiste record, zodat de juiste foto naar de popup gaat.
Code:
Private Sub Knop47_Click()
DoCmd.FindRecord Me.Puzzel_ID, , True, , True
If Not Me.FotoNaam & "" = "" Or Me.FotoNaam = "No-Image.jpg" Then
DoCmd.OpenForm "Popup_Puzzels", acNormal, , , acFormReadOnly, acDialog, _
CurrentProject.Path & "\Afbeeldingen\" & Me.FotoNaam
End If
End Sub
En dit is die code. Het gaat dan om de eerste regel; de andere regels openen de popup. En ik snap niet hoe die code bij jou omzeild wordt

.
Wat je eens kunt doen: zet in het VBA venster de cursor in de procedure van Knop47 op de regel "If Not Me.Fotonaam" en druk op <F9>. Er staat nu een onderbrekingspunt in de macro.
Als je het formulier vervolgens in de normale weergave opent, kun je de knop gewoon starten door 'op de foto te klikken'(wat je dus feitelijk niet meer doet). De macro start dan, en stopt op de tweede regel. Nu kun je met <F8> de regels verder uitvoeren. Als je de code náást het formulier zet (bij makkelijk, ik heb twee schermen dus de code staat op het ene scherm en het formulier op de ander. Heb jij dat niet: verklein dan de vensters zodat je beide schermen kan zien) dan zie je dat na de eerste regel het PuzzelID van het geselecteerde record geselecteerd is (zwart-wit bij mij). Dan weet je dus dat de code werkt, en dat je het juiste record en foto te pakken hebt. De rest van de code moet dan de juiste foto openen.
Gebeurt dat allemaal niet bij jou, dan is er wat aan de hand! Dan weet ik zo gauw niet wat, maar daar komen we dan wel achter (hooop ik).