Page 1 of 1

Copy files จาก Folder หนึ่งไปอีก Folder หนึ่ง

Posted: Sun Aug 30, 2015 4:06 pm
by wilbery
อยากทราบวิธีการ Copy File PDF จาก Folder หนึ่งไปอีก Folder หนึ่งโดยใช้ VBA Access.
ผมไป Copy Code มาจาก Internet และก็ลองปรับเปลี่ยน (ตามรูป) แต่มันหา File จาก Path แรกอย่างเดียว
รบกวนช่วยแก้ใข Code ให้สามารถ Copy จากหลายๆ Folder ให้หน่อยครับ

ขอบคุณครับ

Re: Copy files จาก Folder หนึ่งไปอีก Folder หนึ่ง

Posted: Sun Aug 30, 2015 4:31 pm
by snasui
:D ควรโพสต์ Code ให้แสดงเป็น Code อ่านกฎการใช้บอร์ดข้อ 5 ด้านบนประกอบครับ

นอกจากนี้ควรแนบไฟล์ Access มาด้วย ให้ตัดมาเฉพาะที่เกี่ยวข้อง เพียงเพื่อเป็นตัวอย่างเท่านั้น หากไฟล์มีขนาดเกิน 300kb ให้ Zip มาก่อนไม่เช่นนั้นไม่สามารถแนบไฟล์ได้ครับ

Re: Copy files จาก Folder หนึ่งไปอีก Folder หนึ่ง

Posted: Fri Nov 20, 2015 11:49 am
by bank9597
:D ผมไม่เข้าใจว่าทำไมต้องแยก path และ Filename ออกจากกัน ทำให้ยากต่อการเขียนโค๊ดครับ แต่ไหนๆก็ทำมาแล้ว ผมจะแนะนำตามที่ควรจะเป็นดังนี้ครับ

1 . สร้างฟิลด์ ID ในตาราง TemCopyFile *ชื่อไฟล์ต้องมีนามสกุลเสมอ
2. สร้าง Foreign Key ในตาราง sFolderสร้างเป็นชื่อฟิลด์ว่า CopyListID
3. จากนั้นก็เชื่อมรหัสทั้งสองตารางเข้าด้วยกัน
4. สร้างโค๊ดดังนี้ :ard:

Code: Select all

Public Sub CopyFileToNewDes()

    Dim strSQL As String
    Dim rst As DAO.Recordset
    Dim strNewPath As String
    Dim FSO As Object
           
    strSQL = "SELECT [sFol] & [FileName] AS FullPath, temCopyList.FileName " & _
                "FROM temCopyList INNER JOIN sFolder ON temCopyList.ID = sFolder.CopyListID;"
    Set rst = CurrentDb.OpenRecordset(strSQL)
    
    Do While Not rst.EOF
            Set FSO = CreateObject("Scripting.FileSystemObject")
            strNewPath = "C:\tempDwg\"
            FSO.CopyFile (rst!FullPath), strNewPath & rst!FileName, True 'Copy and paste file to destination folder
            Set FSO = Nothing
        rst.MoveNext
    Loop
    
    MsgBox "Move File Successful", vbInformation
    rst.Close
    Set rst = Nothing
    
End Sub
เพิ่มโค๊ดที่เหลือเองตามความต้องการครับ ไม่เข้าใจลองดูไฟล์แนบประกอบครับ