Formulier zonder informatie

Status
Niet open voor verdere reacties.
Kleine vragen schieten er nog wel eens tussen door :).
Code:
Private Sub Form_Current()
    If Not Me.Foto = Null Then
        Me.imgFoto.Picture = CurrentProject.Path & "\" & Me.Foto
    Else
        Me.imgFoto.Picture = CurrentProject.Path & "\Dummy.jpg"
    End If
End Sub
 
Ik kom nog even terug met een foutmelding.
Geen idee wat ik hier nu weer mee aan moet:

20181119_223904.jpg
20181119_224002.jpg

Mijn bestanden staan als volgt gerangschikt:

20181119_223639.jpg
 
De foutmelding is nochtans een stuk duidelijker dan het gemiddelde politieke partijprogramma, hij zegt precies wat er aan de hand is :). En dat kun je ook zien als je naar het plaatje met de foto's kijkt, want die foto's staan in een andere map. En dan kan het formulier 'm uiteraard niet vinden.
 
De code was bijna goed; de check op het tekstveld kon wat netter. Je kunt een veld wel op Null checken, maar dan moet je de veldinstellingen iets aanpassen. Bij mij werkte hij dus wel, en bij jou niet.
Code:
Private Sub Form_Current()
    If Not Me.GewoneNaam.Value & "" = "" Then
        Me.imgFoto.Picture = CurrentProject.Path & "\" & Me.GewoneNaam
    Else
        Me.imgFoto.Picture = CurrentProject.Path & "\Dummy.bmp"
    End If
End Sub

Wat een groter probleem was: de fotonamen klopten niet. Ik vermoed dat je die vanuit de Verkenner hebt gekopieerd, en dat je wellicht de extensies niet ziet. Jouw tabel bevatte de waarde Abtest, terwijl de foto Abtest.BMP heet. Zonder de extensie werkt de code niet, omdat er dan niks gevonden kan worden. Je moet de extensies dus ook invoeren.
 
Het werkt!
Ik dacht nog een foutje te zien in de code. Deze verwees namelijk naar de kolom met de namen (natuurlijk zonder extensies) i.p.v. naar de fotokolom (met extensies). Ik heb dat aangepast en ook het pad naar de foto weggehaald.
Nu zal het vast lukken om ook de grote database met 3441 records aan de praat te krijgen.

Heel hartelijk dank! :thumb:

De uiteindelijk code:

Private Sub Form_Current()
If Not Me.Foto.Value & "" = "" Then
Me.imgFoto.Picture = CurrentProject.Path & "" & Me.Foto
Else
Me.imgFoto.Picture = CurrentProject.Path & "\Dummy.bmp"
End If
End Sub
 
Weet je zeker dat dit werkt? Volgens mij geeft CurrentPath geen \ op het eind, en moet je die zelf toevoegen.
Code:
Private Sub Form_Current()
     If Not Me.Foto.Value & "" = "" Then
          Me.imgFoto.Picture = CurrentProject.Path & "\" & Me.Foto
     Else
          Me.imgFoto.Picture = CurrentProject.Path & "\Dummy.bmp"
     End If
End Sub
 
Na nog een submap aangemaakt te hebben voor de foto's werkt onderstaande code, waardoor ik in de betreffende velden inderdaad kan volstaan met naam.bmp.
Het werkt althans in mijn testomgeving.
Zodra ik echter dezelfde code probeer in te voegen in de grote database, krijg ik weer foutmeldingen.
De basis ligt er, maar ik zal nog even door moeten puzzelen!

Private Sub Form_Current()
If Not Me.Foto.Value & "" = "" Then
Me.imgFoto.Picture = CurrentProject.Path & "\Foto's" & Me.Foto
Else
Me.imgFoto.Picture = CurrentProject.Path & "\Foto's\Dummy.bmp"
End If
End Sub
 
Nou maak je weer dezelfde fout: (en ik bedoel niet dat je weer niet de CODE knop gebruikt ;) )
Code:
     Me.imgFoto.Picture = CurrentProject.Path & "\Foto's[B][COLOR="#FF0000"]\[/COLOR][/B]" & Me.Foto
 
Het is me een raadsel waar die ene backslash is gebleven. Het staat correct in de database en dat werkt.
Ik ga nu uitvogelen wat ik in de testomgeving heb gedaan, zodat ik dat precies kan reproduceren.

Nogmaals dank!
En misschien tot een volgende hindernis?

Johan
 
Als je de backslash in de tabel hebt staan, hoef je 'm natuurlijk niet handmatig toe te voegen in de code; een dubbele backslash werkt namelijk niet. Ik zag slechts een verschil in de manier waarop je de foto's laadt, en dat verschil verbaasde mij dus. Als je een dialoogvenster gebruikt om de bestandsnaam op te zoeken, krijg je ook geen backslash.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan