Page 1 of 1

ช่วยแก้โค้ดให้หน่อยครับ

Posted: Mon Mar 13, 2023 2:28 pm
by Godtheking
:D โค้ดมันติดครับช่วยหน่อยไฟล์ของผมเอาไว้ One drive ผมให้ไฟล์บันทึกอัตโนมัติ แล้วระบบติด แต่ถ้าอยู่ นอก One Drive ระบบไม่ติดระบบปกติทุกอย่างแก้อย่าไงครับช่วยทีครับ

Code: Select all

Function SQLSelect(ByVal strSql As String) As ADODB.Recordset
    Dim conn As New ADODB.Connection
    Dim rst As New ADODB.Recordset

        If conn.State = 0 Then
            conn.Open "Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=" & ThisWorkbook.FullName & " ;IMEX=1;"
                   If conn.State = 1 Then
                      rst.Open strSql, conn, adOpenStatic, adLockReadOnly
                      rst.Filter = ""
                      Set SQLSelect = rst
                   End If
        Else
          rst.Close
          Set rst = Nothing
        
        End If
 
End Function

Re: ช่วยแก้โค้ดให้หน่อยครับ

Posted: Mon Mar 13, 2023 6:37 pm
by snasui
:D Error ที่บรรทัดนั้นแสดงว่า ADODB ไม่สามารถ Connect ไปยังไฟล์ที่เก็บใน OneDrive ต้องใช้ Function ที่ช่วยหา Local File ของ OneDrive เข้ามาช่วย ดูตัวอย่างได้จากส่วนท้าย ๆ ของ Link นี้ครับ :arrow: Local_Workbook_Name

Re: ช่วยแก้โค้ดให้หน่อยครับ

Posted: Tue Mar 14, 2023 8:58 am
by Godtheking
ช่วยยกตัวอย่างให้หน่อยได้ไหมครับ lส่วนท้ายๆ ของ Link ผมไม่สามารถหาได้ครับผมไม่รู้ว่าต้องใช้ส่วนไหนเข้ามาช่วยใน Link เยอะมากครับ

Re: ช่วยแก้โค้ดให้หน่อยครับ

Posted: Tue Mar 14, 2023 6:59 pm
by snasui
:D เข้าไปตาม Link แล้วกดแป้น Ctrl+F คีย์คำค้นว่า Local_Workbook_Name แล้วลองไล่ดูไปทีละลำดับ

อันท้าย ๆ Code จะถูกปรับเพื่อแก้ไขสิ่งที่มีผู้ทำการทดลองแล้วยังติดปัญหาอยู่ หากว่า Code แรกใช้งานได้ก็ไม่ต้องลองทุกอันแต่อย่างใดครับ