Access-o-Mania

Access-Forum (Deutsch/German) => Access Programmierung => Thema gestartet von: JoergAT am Oktober 07, 2020, 14:04:44

Titel: Bilder laut Tabelleneintrag kopieren oder verschieben
Beitrag von: JoergAT am Oktober 07, 2020, 14:04:44
Hallo,
vielleicht kann mir jemand Helfen. Ich habe folgendes Problem.

Ich möchte gerne über einen Button diese Bilder (siehe Bild), die in dieser Tabelle stehen von Ihrem alten Ordner "Ist" in den neuen Ordner "Soll" kopieren oder verschieben je nachdem was gewählt (Aktionsart)wurde.

Wer kann mir hier weiterhelfen?
Das wäre super :-)

Ich benötige den vba Code für meinen Button

Danke schon mal im voraus.
Gruß Jörg

Datei zum download: http://regional-meine-wahl.de/DatenKopieren.accdb

Bild als pdf: http://regional-meine-wahl.de/Ansicht.pdf
Titel: Re: Bilder laut Tabelleneintrag kopieren oder verschieben
Beitrag von: Beaker s.a. am Oktober 07, 2020, 14:14:51
Hallo Jörg,
Externe Links sind hier nicht gerne gesehen. Ich öffne sie gar
nicht mehr.
Packe beide Dateien in ein zip-Archiv und lade es direkt hier
im Forum hoch, - siehe "Attachments and other options"
gruss ekkehard
Titel: Re: Bilder laut Tabelleneintrag kopieren oder verschieben
Beitrag von: JoergAT am Oktober 07, 2020, 14:21:21
OK, danke
bin neu hier muss mich erst einfinden ;-)
Titel: Re: Bilder laut Tabelleneintrag kopieren oder verschieben
Beitrag von: JoergAT am Oktober 07, 2020, 14:27:38
Aha gefunden

Titel: Re: Bilder laut Tabelleneintrag kopieren oder verschieben
Beitrag von: Beaker s.a. am Oktober 07, 2020, 15:26:47
Hallo Jörg,
Nur ganz kurz, muss jetzt weg
Luftcode:
Dim sCopyMove As String
Dim rst As DAO.Recordset
'Recordset erstellen mit DS-Herkunft wie UFo
'per Schleife
While Not rst.EOF
    sCopyMove = rst.DatenpfadIst & rst.DatenbildIst & " " & rst.DatenpfadSoll & rst.DatenbildSoll
    Select Case rst.AktionsArt
    Case "Bild Kopieren"  'ein Schlüssel (1, 2, ...) wäre hier besser
        Copy sCopyMove
    Case "Bild verschieben"
        Name sCopyMove
    End Select
Loop
Kann sein, dass in dem/um den String noch " fehlen.

gruss ekkehard
Titel: Re: Bilder laut Tabelleneintrag kopieren oder verschieben
Beitrag von: JoergAT am Oktober 07, 2020, 16:34:01
Hallo ekkehard,

habe deinen Code getestet und auch so weit ich kann abgeändert, so das die Fehlermeldungen vielleicht verschwinden.

Leider ohne Erfolg.

Könntest du da nochmal drüber schauen?

Wäre super :-)

Danke Gruß Jörg
Titel: Re: Bilder laut Tabelleneintrag kopieren oder verschieben
Beitrag von: Beaker s.a. am Oktober 08, 2020, 12:50:10
ZitatKönntest du da nochmal drüber schauen?
Wo?
Hast die Anlage im OP getauscht?
Am Einfachsten du lädst die DB mal hier hoch, da muss ich nicht alles
nachbauen.
Titel: Re: Bilder laut Tabelleneintrag kopieren oder verschieben
Beitrag von: JoergAT am Oktober 08, 2020, 14:39:44

Zitat von: Beaker s.a. am Oktober 08, 2020, 12:50:10
ZitatKönntest du da nochmal drüber schauen?
Wo?
Hast die Anlage im OP getauscht?
Am Einfachsten du lädst die DB mal hier hoch, da muss ich nicht alles
nachbauen.

Die Datenbank befindet sich in der zip Datei (Ansicht.zip) in der Fragestellung.

Danke für die Mühe
Titel: Re: Bilder laut Tabelleneintrag kopieren oder verschieben
Beitrag von: Beaker s.a. am Oktober 08, 2020, 16:19:13
Hallo Jörg,
Hier der Code für den Button (Fehlerbehandlung fehlt noch)
Private Sub btoListeBearbeiten_Click()

    Dim sQuelle As String
    Dim sZiel As String
    Dim rst As DAO.Recordset
   
    Set rst = Me.ufcDatenbilderKopieren.Form.Recordset

    With rst
        .MoveFirst
        Do While Not .EOF
            sQuelle = .Fields(1) & .Fields(2) & " "
            sZiel = .Fields(3) & .Fields(4)
            Select Case .Fields(5)
            Case 0
                FileCopy sQuelle, sZiel
            Case 1
              Name sQuelle As sZiel
            End Select
            .Edit
                .Fields(6) = True
            .Update
            .MoveNext
        Loop
    End With
   
Set rst = Nothing

End Sub

gruss ekkehard
Titel: Re: Bilder laut Tabelleneintrag kopieren oder verschieben
Beitrag von: JoergAT am Oktober 09, 2020, 08:52:52
Hallo ekkehard, danke für deine Mühe, aber ich bekomme es nicht zum laufen.

Code habe ich wie folgt abgeändert.

    Dim sQuelle As String
    Dim sZiel As String
    Dim rst As DAO.Recordset
   
    Set rst = Me.ufcDatenbilderKopieren.Form.Recordset

    With rst
        .MoveFirst
        Do While Not .EOF
            sQuelle = .txtDatenpfadIst & .txtDatenbildIst & " "
            sZiel = .txtDatenpfadSoll & .txtDatenbildSoll
           
            Select Case .txtAktionsart
                Case 0
                 FileCopy sQuelle, sZiel
                   
                Case 1
                 Name sQuelle As sZiel
             
            End Select
            .Edit
                .txterledigt = True
            .Update
            .MoveNext
        Loop
    End With
   
Set rst = Nothing

Was ist da noch falsch?
Danke Gruß Jörg
Titel: Re: Bilder laut Tabelleneintrag kopieren oder verschieben
Beitrag von: ebs17 am Oktober 09, 2020, 09:03:42
    With rst
        .MoveFirst
        Do While Not .EOF
            ' sQuelle = .txtDatenpfadIst & .txtDatenbildIst & " "
            sQuelle = .Fields("txtDatenpfadIst") & .Fields("txtDatenbildIst") & " "
           
            ' oder schlechter
            ' sQuelle = !txtDatenpfadIst & !txtDatenbildIst & " "
(Syntax ist nicht beliebig.)
Titel: Re: Bilder laut Tabelleneintrag kopieren oder verschieben
Beitrag von: JoergAT am Oktober 09, 2020, 10:00:43
Top, vielen vielen Dank das funzt super.



Gruß Jörg

Hier nochmal zum download