Avatar billede hnto Nybegynder
26. august 2010 - 13:14 Der er 12 kommentarer og
1 løsning

vba script på copy og rename fil

jeg har en tabel"tabel1" hvor der er 2 kolonner.
kolonne1= varenummer
kolonne2= billednavn

det jeg ønsker er et script der løver kolonnen billednavn igennem, og leder efter et filnavn i mappen c:\billeder\.

når den finder filnavnet skal den kopiere filen til mappen c:\billeder\web\

når filen så er kopieret til den nye folder skal den renames filen til værdien der står i varenummer feltet

når alle felter i processen er færdig skal den kvittere med en msgboks "kørsel er nu færdig"
Avatar billede terry Ekspert
26. august 2010 - 14:05 #1
Dim rs As ADODB.Recordset
Dim aTable1Values

    Set rs = New ADODB.Recordset
   
       
    With rs
       
        Set .ActiveConnection = CurrentProject.Connection
       
        .Open "Select varenummer, billednavn From tabel1", , , adLockOptimistic
           
        On Error Resume Next
        Do Until .EOF
           
            FileCopy "C:\billeder\" & rs("billednavn"), "C:\billeder\web\" & rs("varenummer")
           
            .MoveNext
           
        Loop
       
    End With
   
    rs.Close

    MsgBox "kørsel er nu færdig"
Avatar billede terry Ekspert
26. august 2010 - 14:08 #2
Dim rs As ADODB.Recordset

    Set rs = New ADODB.Recordset
   
       
    With rs
       
        Set .ActiveConnection = CurrentProject.Connection
       
        .Open "Select varenummer, billednavn From tabel1", , , adLockOptimistic
           
        On Error Resume Next
        Do Until .EOF
           
            FileCopy "C:\billeder\" & !billednavn, "C:\billeder\web\" & !varenummer
            .MoveNext
           
        Loop
       
    End With
   
    rs.Close

    MsgBox "kørsel er nu færdig"
Avatar billede hnto Nybegynder
26. august 2010 - 16:42 #3
hvad er forskellen på 1 indlæg og andet indlæg.?
hvilken en skal jeg anvende ?

NB.
jeg kører access 2003 gør det nogen forskel i relation til dine funktionskald ?
Avatar billede terry Ekspert
26. august 2010 - 17:06 #4
They are both very similar, only differnce is the first has a variable which isnt used so its deleted in the second. Any other changes arent worth mentioning.

Use the second.

It should work in all versions of ACCESS but you need a refernece to ADO.
(tools+references)
Avatar billede hnto Nybegynder
26. august 2010 - 18:06 #5
jeg prøver det lige af....
skal nok lige reply senere i aften på det..
Avatar billede hnto Nybegynder
26. august 2010 - 18:31 #6
haqr connectet til diverse ADO i preferences, men når jeg i modules vil køre scriptet (f8) sker der ingenting.
Skal der ikke defineres at det er currentdatabase og alt det der i starten eller ?

synes fra gamle dage at kunne huske noget i den retning...
Avatar billede terry Ekspert
26. august 2010 - 18:42 #7
have you placed the code in a sub or function?
Avatar billede terry Ekspert
26. august 2010 - 18:43 #8
The code should work as it is once its in a function.
Avatar billede hnto Nybegynder
26. august 2010 - 18:46 #9
will try that :-)
Avatar billede hnto Nybegynder
26. august 2010 - 18:50 #10
den kopierer en fil, men den mister sin association
på at det er en jpg fil

nogle forslag
Avatar billede hnto Nybegynder
26. august 2010 - 18:55 #11
hvordan får jeg filen til at ende på .jpg
Avatar billede hnto Nybegynder
26. august 2010 - 19:12 #12
hjar selv løst det :

Function kopier_billeder()

Dim rs As ADODB.Recordset
    Set rs = New ADODB.Recordset
    Dim i As String
    i = ".jpg"
           
    With rs
       
        Set .ActiveConnection = CurrentProject.Connection
       
        .Open "Select EAN, picture From billedreferencer", , , adLockOptimistic
           
        On Error Resume Next
        Do Until .EOF
           
            FileCopy "C:\solar\" & !Picture, "C:\solar-web\" & !EAN & i
           
           
           
            .MoveNext
           
        Loop
       
    End With
   
    rs.Close

    MsgBox "kørsel er nu færdig"
    End Function
Avatar billede terry Ekspert
26. august 2010 - 19:14 #13
thanks, glad you got it working.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester