แสดงกระทู้

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Surapong J Noom

หน้า: [1]
1
เมื่อเช้าอ่านแล้ว ไม่ค่อยเข้าใจ ไม่น่าใช่แบบนี้ แต่เอาไปปรับดูแล้วกันครับ
โพสต์นี้ได้รับคำขอบคุณจาก: Surapong J Noom

2
https://www.thai-access.com/index.php?topic=1284.0
โพสต์นี้ได้รับคำขอบคุณจาก: Surapong J Noom

3
มีไฟล์ฐานขอมูลที่ทำเองไว้บ้างแล้วหรือยัง
ทำมาก่อน ติดตรงไหนก็ค่อยให้ช่วยแนะนำครับ
รูปแบบรายงาน Report สติกเกอร์ออกแบบไว้หรือยัง
ฐานข้อมูลมีตารางอะไรแล้วบ้าง ชุดข้อมูลตัวอย่าง
ที่จะโฟกัสคือ ติดคำสั่งไหนที่บนฟอร์มหรือคิวรี่ที่จะให้ช่วย
เพราะที่กล่าวหน้าทั้งหมดเหมือนสั่งงานตามที่รีเควสมา
โพสต์นี้ได้รับคำขอบคุณจาก: Surapong J Noom

4
ไปได้โค๊ดที่อาจารย์ลงไว้ใน Youtube

ผมเก็บเมลล์เพื่อนๆ ไว้ถ้าต้องการ Loop ชื่อเมลล์ลงในบรรทัด  .To = Nz(ฟิลด์เก็บเมลล์)
ต้องทำโค๊ดยังไงครับ  หรือมีโค๊ดอื่นมั๊ยครับ สำหรับการส่งเมลล์เป็นกลุ่มๆ


On Error GoTo Err:
    Dim NewMail As Object
    Dim mailConfig As Object
    Dim fields As Variant
    Dim msConfigURL As String

    'late binding
    Set NewMail = CreateObject("CDO.Message")
    Set mailConfig = CreateObject("CDO.Configuration")

    ' load all default configurations
    mailConfig.Load -1

    Set fields = mailConfig.fields

    'Set All Email Properties
    With NewMail
        .Sender = Forms!mainmail!mygmail
        .From = Nz(Forms!mainmail!mydetail)
        .To = Nz(Me.fmail)  '<<<<<<<<< ต้องการ Loop  ลงตรงนี้  <<<<<<<<<<<<<<<<<<<<
        .CC = Nz(Forms!mainmail!sumnao1)
        .BCC = Nz(Forms!mainmail!sumnao2)
        .Subject = Nz(Forms!mainmail!ruang1)
        .BodyPart.Charset = "utf-8"
        .HTMLbody = "<Font Face=AngsanaUPC Size=" & Forms!mainmail!fontSiz & " Color=" & Forms!mainmail!seefon & ">" & Forms!mainmail!bui1 & Nz(Forms!mainmail!detail2) & Forms!mainmail!bui2 & "</Font>"
       
        If Not IsNull(Forms!mainmail!fi1) Then
            If Dir(Forms!mainmail!fi1) <> "" Then
                .Addattachment Nz(Forms!mainmail!fi1)
            End If
        End If
       
        If Not IsNull(Forms!mainmail!fi2) Then
            If Dir(Forms!mainmail!fi2) <> "" Then
                .Addattachment Nz(Forms!mainmail!fi2)
            End If
        End If
       
        If Not IsNull(Forms!mainmail!fi3) Then
            If Dir(Forms!mainmail!fi3) <> "" Then
                .Addattachment Nz(Forms!mainmail!fi3)
            End If
        End If
       
    End With

    msConfigURL = "http://schemas.microsoft.com/cdo/configuration"

    With fields
        .Item(msConfigURL & "/smtpusessl") = True
        .Item(msConfigURL & "/smtpauthenticate") = 1
        .Item(msConfigURL & "/smtpserver") = "smtp.gmail.com"
        .Item(msConfigURL & "/smtpserverport") = 465
        .Item(msConfigURL & "/sendusing") = 2
        .Item(msConfigURL & "/sendusername") = Forms!mainmail!mygmail
        .Item(msConfigURL & "/sendpassword") = DLookup("mypass", "mypass")
        .Update
    End With
    NewMail.Configuration = mailConfig
    NewMail.Send

Exit_Err:
    'Release object memory
    Set NewMail = Nothing
    Set mailConfig = Nothing
    End

Err:
    Select Case Err.Number
    Case -2147220973  'Could be because of Internet Connection
        MsgBox "Check your internet connection." & vbNewLine & Err.Number & ": " & Err.Description
    Case -2147220975  'Incorrect credentials User ID or password
        MsgBox "Check your login credentials and try again." & vbNewLine & Err.Number & ": " & Err.Description
    Case Else   'Report other errors
        MsgBox "Error encountered while sending email." & vbNewLine & Err.Number & ": " & Err.Description
    End Select

    Resume Exit_Err
โพสต์นี้ได้รับคำขอบคุณจาก: Surapong J Noom

5
ห้อง Ms Access อื่นๆ / : Link MySQL
« เมื่อ: 28 ม.ค. 62 , 14:27:21 »
ก็ฝากไว้เผื่อจะสามารถช่วยให้มิตรรักแฟนเพลงท่านหนึ่งท่านใด ก้าวพ้นปัญหาที่กำลังแก้อยู่ได้เร็วขึ้น
โพสต์นี้ได้รับคำขอบคุณจาก: Surapong J Noom

6
ห้อง Ms Access อื่นๆ / Link MySQL
« เมื่อ: 28 ม.ค. 62 , 14:21:19 »
พอดีไปเจอโจทย์ใหม่ คือต้องเชื่อมฐานข้อมูลจาก MySQL มาที่งานเก่าที่เป็น SQL Server โดยตัว Front End เป็น MS-Access
งมอยู่พักใหญ่ ในที่สุดก็สามารถทำได้

หลักการมีดังนี้ครับ
- ขั้นตอนที่ 1 ต้องลง Driver ของ MySQL ที่เครื่องก่อน ณ. วันที่โพสนี้มี 2 เวอร์ชั่น คือ v.3.1.5 , 8.0 แนะนำเป็นเวอร์ชั่น 3.1.5
- ขั้นตอนที่ 2 สร้าง User ที่สามารถเข้าถึงฐานข้อมูลให้เรียบเรียบก่อนพร้อมทดสอบ และอย่าเปลี่ยนสิทธิ์ของ User ที่ว่านี้ให้เป็น Full ด้วยเครื่องหมาย %
- ขั้นตอนที่ 3 สร้าง ODBC เพื่อ Connect ไปยัง MySQL Server
- ขั้นตอนที่ 4 ทำการ Link Table เข้ามาในไฟล์ Front End ที่กำลังใช้งานอยู่
- ขั้นตอนที่ 5 ในหน้าเขียนโค๊ด VBA ให้ติ๊กเลือก Tools --> Reference --> Microsoft DAO 3.6 Object libray

เมื่อต้องการจะจัดการกับข้อมูลใน Table สามารถใช้รูปแบบดังนี้

    Dim rst1, rst2, rst3, rst4, rst5, rst6, rst7, rst8 As DAO.Recordset

    Dim dbs As Database
    Set dbs = CurrentDb()
   
    Set rst1 = dbs.OpenRecordset("SELECT * from Table1")

    'Add
    rst1.addnew
    rst1!Filed1 = "Test"
    rst1.update

    'Edit
    rst1.edit
    rst1!Filed1 = "Test"
    rst1.update

    'Del
    rst1.Delete

    rst1.close
    Set rst1 = nothing

ขอขอบคุณความรู้เกี่ยวกับ MS-Access จาก อ. สุภาพ ไชยา
โพสต์นี้ได้รับคำขอบคุณจาก: Surapong J Noom

7
ตัวอย่างนี้ใช้คิวรี่ 2 อันนะครับ

อันที่ 1 ใส่แบบนี้ โดยผมตั้งชื่อว่า Query1

โค๊ด: [Select]
SELECT [data].Date, Min([data].Time) AS [Time]
FROM data
GROUP BY [data].Date;

อันที่สองใช้ Sub คิวรี่แบบนี้ครับ

โค๊ด: [Select]
SELECT data.*
FROM Query1 INNER JOIN data ON (Query1.Date = data.Date) AND (Query1.Time = data.Time);

โพสต์นี้ได้รับคำขอบคุณจาก: Surapong J Noom

หน้า: [1]