PDA

Vollständige Version anzeigen : Bilder extern speichern


Peter Schemmel
14.06.2012, 11:16
Moin Zusammen,

ich habe eine Bilddatenbank erstellt und die Bilder über OLE-Objekt eingebunden. Über ein Formular kann ich die Bilder nach Kriterien selektieren und im UF anzeigen (Bildpfad. Dateiname, Bild usw.)

Besteht die eine Möglichkeit die selektierten Bilder extern in einem anderen Ordner zu speichern? (nicht den Pfad, sondern die Bilder als solches).

Gruß

Peter

Atrus2711
14.06.2012, 11:30
Hi,

wenn du den Pfad hast, wo die Bilder derzeit liegen, kannst du die doch von dort nach woanders kopieren. Dazu gibts Befehle wie FileCopy oder das FileSystemObject mit seinen Methoden.

Peter Schemmel
14.06.2012, 11:40
Hallo,

guter Hinweis mit FileCopy.

Nur wie setze ich dies um. Die Selektion im UF kann aus meheren Dateisätzen bestehen. Muss ich dies über eine Schleife realisieren (Basis Abfrage vom UF)?

Gruß

Peter

Atrus2711
14.06.2012, 12:08
Ja. Du könntest z.B. die Ufo-Abfrage in einem Recordset durchlaufen und jede Datei verschieben/kopieren. Das würde ich alledings auf einen Button legen, damit die Kopieraktion erst auf Wunsch passiert und nicht schon "beim Angucken".

Peter Schemmel
14.06.2012, 16:47
Danke nochmals für den Tipp

Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim ExportPfad As String
Dim qdf As DAO.QueryDef
Dim strSourceFile, strTargetFile As String
Dim DateiName


If Forms!frm_502_Bildselektion!Selektion_Fruchtgattung = True Then

Set db = CurrentDb
Set qdf = db.QueryDefs("qry_500_Bilder_UF")

qdf(0) = Forms![frm_502_Bildselektion].cbo_Schadfaktor 'qdf.Parameters!MeinParameter2 = Wert_für_Parameter2
'qdf(1) = Forms![frm_502_Bildselektion].cbo_Schadfaktor

Set rs = qdf.OpenRecordset(dbOpenDynaset)
Else

Set db = CurrentDb
Set qdf = db.QueryDefs("qry_500_Bilder_UF_02")
qdf(0) = Forms![frm_502_Bildselektion].cbo_Schadfaktor_02

Set rs = qdf.OpenRecordset(dbOpenDynaset)
End If

While Not rs.EOF

strSourceFile = rs!BildPfad

DateiName = rs!DateiName

ExportPfad = Me.PfadName & "\" & DateiName

Debug.Print strSourceFile
Debug.Print strTargetFile
Debug.Print ExportPfad

FileCopy strSourceFile, ExportPfad

rs.MoveNext
Wend

MsgBox "Bilder wurden im Verzeichnis '" & Me.PfadName & "' gespeichert !", vbInformation, "Speichern beendet!"

qdf.Close: Set qdf = Nothing
rs.Close: Set rs = Nothing
Set db = Nothing


Gruß

Peter