Page 1 of 1

VBA ดึงข้อมูลจาก drive ต่างกัน

Posted: Tue Nov 29, 2016 10:18 am
by zixnutz
ขอความช่วยเหลือครับ ตอนนี้มีปัญหาเกี่ยวกับการใช้ไฟล์ข้อมูลใน Lan เดียวกันครับ
ผมได้ทำสูตร VBA การดึงรูปภาพครับ
แต่พบปัญหาคือ
User ที่จะใช้ไฟล์ในวง Lan มี Drive คนละ Drive กันครับ
คือ บางเครื่องไฟล์อยู่ Drive U:\\ บางเครื่อง Drive S:\\ บางเครื่องก็จะเป็น Drive V:\\ แต่เป็นชื่อ Drive เดียวกันนะครับ

ไม่ทราบว่าจะพอมีวิธีแก้ไหมครับ ที่จะทำให้ใช้ร่วมกันได้

Code: Select all

Sub ShowPicture1()
    Dim r1 As Range, i As Integer, ButName As String
    Dim imgIcon1 As Object
    Dim obj As Object
    ButName = Application.Caller
    i = Val(Mid(ButName, InStr(1, ButName, " ")))
    Select Case i
        Case Is = 1: Set r1 = Range("c16")
        Case Is = 2: Set r1 = Range("m17")
        Case Is = 3: Set r1 = Range("l19")
    End Select
    For Each obj In ActiveSheet.Shapes
        If obj.Left = r1.Left Then _
            obj.Delete
    Next obj
    Set imgIcon1 = ActiveSheet.Shapes.AddPicture( _
        Filename:="U:\4-Press Die Line\PicFoam\" & r1.Offset(, -1) & " (" & i & ").jpg", _
        linktofile:=False, savewithdocument:=True, Left:=r1.Left, _
        Top:=r1.Top, Width:=r1.MergeArea.Width, Height:=r1.MergeArea.Height)
End Sub
ขอบคุณครับ

Re: VBA ดึงข้อมูลจาก drive ต่างกัน

Posted: Tue Nov 29, 2016 7:29 pm
by snasui
:D กำหนดให้ User Map Drive ให้เป็น Drive เดียวกัน ไม่เช่นนั้นต้อง Loop หา Drive หา Folder ที่เก็บไฟล์เอง

หรือใช้ Code ในการ Map Drive ขึ้นมาใหม่ เมื่อดึงข้อมูลเรียบร้อยแล้วค่อยลบทิ้ง ดูตัวอย่างที่นี่ครับ http://stackoverflow.com/questions/3857 ... -using-vba

Re: VBA ดึงข้อมูลจาก drive ต่างกัน

Posted: Wed Nov 30, 2016 10:48 am
by zixnutz
snasui wrote:ไม่เช่นนั้นต้อง Loop หา Drive หา Folder ที่เก็บไฟล์เอง
ในส่วนนี้ต้องแก้สูตรตรงไหนหรือเปล่าครับ :D

Re: VBA ดึงข้อมูลจาก drive ต่างกัน

Posted: Wed Nov 30, 2016 8:13 pm
by snasui
:D ที่เขียนมานั้นเรียกว่า Code ไม่เรียกว่าสูตรครับ

สำหรับการ Loop เพื่อหา Drive มีอยู่ใน Link ที่ผมแนบไป ลองปรับมาเองก่อน ติดแล้วค่อยถามกันครับ