Ich bitte um Hilfe
> Access 2010
Ich habe:
Bilder nicht in Access gespeichert,
ein Tabellenfeld "Pfad"
im Formular ein Feld "Pfad"
Ein Gebundenes Objektfeld "Bild"
Steuerelementinhalt: Pfad
zugelassene OLE-Objektart: verknüpft
Da ich die Bilder unter der ID-Nummer der Personen (ASP_ID)
speichere, veranstalte ich folgendes im Formular:
Private Sub Form_Current()
On Error GoTo MyError
'Feld "Pfad" füllen falls leer:
If Me!Pfad = "" Then
Dim strPfad As String
Dim strBild As String
Dim strPfadPfad As String
strPfad = "C:/Müller/Fotos/"
strBild = Me!ASP_ID
Me!Pfad = strPfad & strBild & ".jpg"
End If
MyExit:
Exit Sub
MyError:
MsgBox Err.Description
Resume MyExit
End Sub
Die Pfade werden richtig geschrieben aber die Bilder werden
einfach nicht angezeigt.
Was mach ich falsch ?
Hallo,
wenn du nur den Pfad zum Bild gespeichert hast, benötigst du ein Bildfeld und kein Objektfeld.
Füge also ein beliebiges Bild ein (Bild1), und entferne das Bild in den Eigenschaften für das Bild.
Dann kannst du im Ereignis Beim Anzeigen schreiben: Me.Bild1.Picture = Me.BildDatenfeld
In deinem Fall sieht das dann so aus:
Private Sub Form_Current()
Me.Bild1.Picture = "C:/Müller/Fotos/" & Me!ASP_ID
End Sub
Gruß Andreas
Hallo,
zum Einen verwendetest Du ein gebundenes Objektfeld, sollte aber ein Bild-Steuerelement ("Bild1") sein.
zum Anderen nützt es nichts, einem (gebundenen?) Textfeld den PfadDateiNamen zuzuweisen.
Sub Form_Current()
Dim strPfad As String
If not Isnull (Me!ASP_ID) Then
strPfad = "C:/Müller/Fotos/" & Me!ASP_ID & ".jpg"
If Dir (strPfad) <> vbNullString) Then
Me!Bild1.Picture=strPfad
End If
End if
End If
Ok, danke Franz, jetzt funzt es.
Die Bilder werden angezeigt, aber bei Datensätzen bei denen keine Bilder vorhanden sind, bleiben die vorher angezeigten Bilden bestehen.
Was mach ich da ?
Jetzt hab' ich's.
Ich hab noch zwei Zeilen zugefügt schon geht's.
--------------------------------------------
Private Sub Form_Current()
On Error GoTo MyError
Dim strPfad As String
If Not IsNull(Me!ASP_ID) Then
strPfad = "C:/Müller/Fotos/" & Me!ASP_ID & ".jpg"
If Dir(strPfad) <> (vbNullString) Then
Me!Bild.Picture = strPfad
Me!Bild.Visible = True
Else
Me!Bild.Visible = False
End If
End If
MyExit:
Exit Sub
MyError:
MsgBox Err.Description
Resume MyExit
End Sub
----------------------------------------------
Jetzt zeigt er die Bilder an und blendet das Bild aus, wenn kein Bild vorhanden ist.
Ich danke Euch. Ihr habt mich auf den richtigen Weg gebracht und aus der Patsche geholfen.