แสดงกระทู้

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 - Tatchawin

หน้า: 1 [2] 3 4
19
ใส่ .BodyPart.Charset = "utf-8"   
ตามนี้ได้เลยครับ

https://stackoverflow.com/questions/43927471/send-up-arrow-%E2%86%91-character-to-iphone-with-sms-using-vba-and-a-cdo-mail-object

ผมลองแล้วใช้ได้



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

20
สำหรับ Gmail ใช้อันนี้ได้ครับ
https://wellsr.com/vba/2020/excel/vba-send-email-with-gmail/
แล้วก็เปิด App password gmail นำพาสที่ได้มาใช้ครับ
อันนี้ใช้งานได้จริง ลองแล้วครับ ติดอย่างเดียวครับ ในส่วนเนื้อหา Textbody ไม่รองรับภาษาไทย แก้ไขยังไงได้บ้างครับ
โพสต์นี้ได้รับคำขอบคุณจาก: Tatchawin

21
ใช้การกำหนด RowSource ครับ ตัวอย่าง
สมมุติ ชื่อตาราง table1
        ชื่อฟิลล์ที่นำมาแสดงชื่อรายการในคอมโบบ๊อกชื่อ NationalID


Private Sub cbPlantID_AfterUpdate()
Dim SQL As String
If Me.cbPlantID = 5 Then
SQL = "SELECT NationalID  FROM Table1;"
Else
SQL = "SELECT NationalID FROM Table1 WHERE (((PlantID)=[forms]![ชื่อฟอร์มหลัก]![cbPlantID]));"
End If
Forms![ชื่อฟอร์มหลัก]![ชื่อฟอร์มย่อย].Form.cbNationalID.RowSource = SQL
End Sub
โพสต์นี้ได้รับคำขอบคุณจาก: Tatchawin

22
ที่มุมมองออกแบบ บน MainForm ให้คุณกดติ๊กที่ Subform แล้วที่คุณสมบัติของ Subform ดูชื่อจริงๆของ Subformครับมันไม่ได้ชื่อเดียวกับที่คุณตั้งไว้เสมอไป ถ้าจะแก้ให้ตรงต้องแก้ตรงนั้นครับ

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

23

อาจจะเกิดจากสาเหตุอื่นๆ ได้ครับ
เช่นการกำหนด เชื่อมโยงข้อมูลหลัก กับข้อมูลลูก ตรงนี้ก็มีส่วนเหมือนกัน
ต้องดูการกำหนด RecordSource ของคอมโบ txtNationalID ด้วยครับว่าตั้งค่าถูกหรือไม่
โพสต์นี้ได้รับคำขอบคุณจาก: Tatchawin

24
สำหรับ Gmail ใช้อันนี้ได้ครับ
https://wellsr.com/vba/2020/excel/vba-send-email-with-gmail/
แล้วก็เปิด App password gmail นำพาสที่ได้มาใช้ครับ
โพสต์นี้ได้รับคำขอบคุณจาก: Tatchawin

25
ก็น่าจะเป็น

โค๊ด: [Select]
                rs.Edit
                rs!Password = Me.txtNewPassword
                rs.Update
                rs.Close: Set rs = Nothing
                DoCmd.SendObject ,,,"ผู้รับ@xyz.co.th",,,"ข้อความใน Subject","เนื้อความในเมล์"
โพสต์นี้ได้รับคำขอบคุณจาก: Tatchawin

26
ห้อง MS Access / : การใช้งาน SQL Server กับ MS Access
« เมื่อ: 23 ก.ย. 63 , 16:07:05 »
1.ดึงมาใช้ได้นะครับ
2.อันนี้ผมไม่เคยส่วนมากที่ใช้จะเขียนใหม่เลยครับแต่คิดว่าคงได้บางอย่างครับ

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

27
1. ต้องสร้างตัวแปร IsSaveClicked ในระดับของ form module ตัวนึงที่เก็บสถานะว่าได้กดปุ่ม Save ก่อนจะเกิดการบันทึกหรือไม่ แล้วค่อยทำการปรับปรุง txtCreated, txtCreatedBy, txtModified หรือ txtModifiedBy ภายใน Form_BeforeUpdate event procedure เพียงจุดเดียวตามค่าของตัวแปรนี้

2. Me.Dirty = False และ DoCmd.RunCommand acCmdSaveRecord ทำงานเหมือนกันคือสั่งให้บันทึกเรคอร์ดบนฟอร์มลงฐานข้อมูล ดังนั้นเลือกคำสั่งใดคำสั่งหนึ่งก็พอ

3. Form_BeforeUpdate event procedure จะทำงานเสมอเมื่อจะบันทึกข้อมูลบนฟอร์มลงฐานข้อมูล เมื่อโค้ดในปุ่ม Save สั่งบันทึกปั๊ป โค้ดจะกระโดดมา Form_BeforeUpdate event procedure ทันที และตามด้วย Form_AfterUpdate event procedure  แล้วค่อยกลับมาที่โค้ดบรรทัดต่อไปในปุ่ม Save

4. การตรวจสอบว่าเป็นเรคอร์ดเก่าหรือใหม่ สามารถเช็คจาก Me.NewRecord ได้ จึงคิดว่าไม่ต้องแยกปุ่มบันทึกเรคอร์ดใหม่และเก่าแยกกัน

5. Form_AfterUpdate event procedure เป็นตำแหน่งที่เหมาะสมที่จะวางโค้ดแสดงข้อความว่าได้บันทึกแล้วเอาไว้ที่นี่ เราจะใช้สถานะความเป็นเรคอร์ดเก่าหรือใหม่เพื่อแสดงข้อความที่แตกต่างกัน แต่เนื่องจากเมื่อบันทึกเรคอร์ดแล้ว Me.NewRecord property จะให้ค่าเป็น FALSE เสมอ ดังนั้นใน event นี้จึงเช็คจาก property นี้ไม่ได้ จึงต้องเก็บสถานะว่าเป็นเรคอร์ดใหม่เอาไว้ในตัวแปร IsNewRecord เพิ่มเติมตั้งแต่อยู่ใน  Form_BeforeUpdate event procedure

หมายเหตุ ผมไม่ได้เปิดโปรแกรมคุณหรือทดสอบโค้ดนี้ คุณเอาไปลองหรือปรับปรุงเองนะครับ

โค๊ด: [Select]
Option Compare Database
Option Explicit

Dim IsSaveClicked   As Boolean
Dim IsNewRecord     As Boolean

Private Sub cmdSave_Click()
    IsSaveClicked = True
    Me.Dirty = False
End Sub

Private Sub Form_BeforeUpdate(Cancel As Integer)

On Error GoTo Err_BeforeUpdate

    If Not IsSaveClicked Then
        If MsgBox("Are you sure you want to save change?", vbYesNo + vbQuestion, "Save Record") = vbNo Then
            Me.Undo
            GoTo Exit_BeforeUpdate
        End If
    End If
    If Me.NewRecord Then
        Me.txtNationalID1 = Me.txtNationalID2
        Me.txtCreated = Now()
        Me.txtCreatedBy = GetUserName()
        IsNewRecord = True
    Else
        Me.txtModified = Now()
        Me.txtModifiedBy = GetUserName()
    End If
   
Exit_BeforeUpdate:
   Exit Sub
   
Err_BeforeUpdate:
   MsgBox Err.Number & " " & Err.Description
   Resume Exit_BeforeUpdate
End Sub

Private Sub Form_AfterUpdate()
    If IsNewRecord Then
        MsgBox "Your record has been successfully saved!"
    Else
        MsgBox "Your edited record has been successfully saved!"
    End If
    IsNewRecord = False
    IsSaveClicked = False
End Sub

Private Sub Form_Undo(Cancel As Integer)
    IsSaveClicked = False
    IsNewRecord = False
End Sub

Private Sub Form_Error(DataErr As Integer, Response As Integer)
    IsSaveClicked = False
    IsNewRecord = False
End Sub

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

28
https://www.thai-access.com/index.php?topic=1213.msg5343#new
โพสต์นี้ได้รับคำขอบคุณจาก: Tatchawin

29
ลองดัดแปลงเป็นแบบนี้ดูครับ
จากตัวอย่าง Field SortMonthNum เป็น Number นะครับ

โค๊ด: [Select]
Sub Search()
Dim strSearch As String
For Each varItem In Me!lstMonthSort.ItemsSelected
strSearch = strSearch & " Or SortMonthNum=" & "" & Me!lstMonthSort.ItemData(varItem) & ""
Next varItem
If Len(strSearch) = 0 Then
Me.frmqryHRDWH.Form.FilterOn = False
Else

strSearch = Right(strSearch, Len(strSearch) - 3)
Me.frmqryHRDWH.Form.Filter = strSearch
Me.frmqryHRDWH.Form.FilterOn = True
End If
End Sub
โพสต์นี้ได้รับคำขอบคุณจาก: Tatchawin

30
แก้เป็นแบบนี้นะครับ

Private Sub Command6_Click()
Dim strTable, SQL As String
strTable = cbUpdateTable
SQL = "INSERT INTO " & strTable & " ( Field1, Field2, Field3 ) values (text1, text2, text3);"
DoCmd.SetWarnings False
DoCmd.RunSQL SQL
DoCmd.SetWarnings True
MsgBox "นำเข้าไปยังตาราง " & cbUpdateTable & " เรียบร้อยแล้ว"
End Sub


แก้ไขใหม่ครับ เขียนอ้างอิงต้องอ้างอิงจากtextbox บนฟอร์ม
โพสต์นี้ได้รับคำขอบคุณจาก: Tatchawin

31
ขอบคุณทุกท่านครับ เดี๋ยวผมไปแก้อีกที
ขอถามเพิ่มครับ ตรงบรรทัดนี้

    If IsNull(Me.txtSCGEmployeeID) Then
        Me.txtSelection.Value = 0


เนื่องจากปุ่มนี้อยู่ใน Subform ถ้าผมทำปุ่มไว้ข้างนอก Mainform ให้อ้างมาถึง Subform ได้
ผมจะเขียน Code เพื่ออ้างอิงมาที่ Subform นี้ได้อย่างไรครับ
ขอบคุณครับ

if IsNull(Me.txtSCGEmployeeID) Then
        Forms![ชื่อMainform]![ชื่อSubform].Form!txtSelectionValue = 0
end if
โพสต์นี้ได้รับคำขอบคุณจาก: Tatchawin

32
ไม่เว้นวรรค เวลาต่อประโยคบางช่วง ทีเหลือให้ท่านอื่นคอมเมนต์ต่อครับ ยิ่งดูยิ่งผิดปกติ
โพสต์นี้ได้รับคำขอบคุณจาก: Tatchawin

33
ต่อประโยคผิด คอมมา(,) ใส่ไม่ครบ

จริงด้วยครับหลายจุดเลย  :XD: :XD:
โพสต์นี้ได้รับคำขอบคุณจาก: Tatchawin

34
ต่อประโยคผิด คอมมา(,) ใส่ไม่ครบ
โพสต์นี้ได้รับคำขอบคุณจาก: Tatchawin

35
 DoCmd.RunSQL "INSERT INTO qryLean([SCGEmployeeID],[NamePrefixThai],[FirstNameThai],[LastNameThai],[NamePrefixEng],[FirstNameEng],[LastNameEng]," & _
        "[NickName],[Position],[SubShift],[Shift],[SubSection],[Section],[SubDepartment],[Department],[SubDivision],[Division],[SubCompany],[Company],[Birthdate]," & _
        "[SCGHiringDate],[SystemDateTime],[ImagePath],[Selection])" & _
        "SELECT qryHRDWH.SCGEmployeeID, qryHRDWH.NamePrefixThai, qryHRDWH.FirstNameThai, qryHRDWH.LastNameThai, qryHRDWH.NamePrefixEng" _
        & "qryHRDWH.FirstNameEng, qryHRDWH.LastNameEng, qryHRDWH.NickName, qryHRDWH.Position, qryHRDWH.SubShift, qryHRDWH.Shift, qryHRDWH.SubSection" _
        & "qryHRDWH.Section, qryHRDWH.SubDepartment, qryHRDWH.Department, qryHRDWH.SubDivision, qryHRDWH.Division, qryHRDWH.SubCompany, qryHRDWH.Company" _
        & "qryHRDWH.Birthdate, qryHRDWH.SCGHiringDate, qryHRDWH.SystemDateTime, qryHRDWH.ImagePath, qryHRDWH.Selection" & _
        "
FROM qryHRDWH Where qryHRDWH.Selection = -1"

ต่อประโยคผิดเปล่าครับ
มันต้อง ................" _
 แล้วก็ & "............."
หรือเปล่า
โพสต์นี้ได้รับคำขอบคุณจาก: Tatchawin

36
อ้างถึง
ตอนผมจะเข้าไปแก้โค้ด ปรากฏว่าโปรแกรม มีอาการค้าง ไม่แน่ใจว่าตอนท่านแก้มีอาการค้างๆ หน่วงๆบ้างไหมครับ
ถ้าเปน เกิดจากการที่ผมโค้ดมัน จนมันทำงานหนักไปรึเปล่าครับ เท่าที่ท่านเหน

ไม่เจออาการหน่วงครับ
โพสต์นี้ได้รับคำขอบคุณจาก: Tatchawin

หน้า: 1 [2] 3 4