ค่าออกเหมือนกันค่ะ #มือใหม่หัดเขียน



0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

09 ก.ย. 63 , 14:48:12
อ่าน 119 ครั้ง

honeypiez19

  • สมาชิกไท.Access
  • กระทู้: 8

  • ขอบคุณ ไท.Access

    • ดูรายละเอียด

ค่าของช่องแรกออกเป็น 20 มันต้องเป็น 22 ค่ะ T^T ' ช่วยด้วยค่าา #มือใหม่หัดเขียน  :cry: :cry:



Code ค่ะ


Sub TEST1()

    Dim CON As ADODB.Connection
    Dim TRN As ADODB.Recordset
    Dim MST As ADODB.Recordset
    Set CON = CurrentProject.Connection
    Set TRN = New ADODB.Recordset
    Set MST = New ADODB.Recordset
   
    TRN.Open "tblTransaction", CON, adOpenKeyset, adLockOptimistic
   
    Do Until TRN.EOF
        cc = ""
        tName = TRN!itemname + " "
            ' Debug.Print InStr(tName, "22")
            ' Debug.Print tName
        For idx = 1 To Len(tName)
            If Mid(tName, idx, 1) <> " " Then
                cc = cc + Mid(tName, idx, 1)
            Else
                If Len(cc) > 0 Then
                    MST.Open "tblKeyword", CON, adOpenStatic, adLockReadOnly
                ' Do Until MST.EOF
                 '  Debug.Print MST!keyword
                        If cc = MST!Keyword Then
                 '  MsgBox MST!Category & " --- " & MST!Value
                            TRN.Update MST!Category, MST!Value
                            ' Debug.Print MST!Category
                        End If
                        MST.MoveNext
                ' Loop
                    MST.Close
                End If
                cc = ""
            End If
            ' cc = ""
        Next
        If TRN!SizeA = TRN!SizeB Then
            TRN!Description = TRN!SizeA + " " + TRN!Type + " " + TRN!Type2
            ' If TRN!Description <> " " Then
                ' TRN!Description + TRN!SizeA
                ' Debug.Print TRN!Description
            ' End If
            Debug.Print TRN!Description
       
        ElseIf TRN!SizeA <> TRN!SizeB Then
            TRN!Description = TRN!SizeA
            TRN!Description2 = TRN!SizeB
            Debug.Print TRN!Description + TRN!Description2
        End If
        TRN.MoveNext
    Loop
End Sub
« แก้ไขครั้งสุดท้าย: 10 ก.ย. 63 , 11:43:27 โดย honeypiez19 »

 

11 ก.ย. 63 , 22:24:06
ตอบกลับ #1

สันติสุข

: ค่าออกเหมือนกันค่ะ #มือใหม่หัดเขียน
« ตอบกลับ #1 เมื่อ: 11 ก.ย. 63 , 22:24:06 »
เพราะไม่ได้บอกอะไรมาเลย ก็เดานะครับว่า 3 ตำแหน่งที่เป็นสีแดง อาจเป็นจุดที่ทำให้ผิดพลาดได้ นอกจากนี้ ก็เช็คด้วยว่าค่าใน tblKeyword ถูกต้องหรือไม่

                If Len(cc) > 0 Then
                    MST.Open "tblKeyword", CON, adOpenStatic, adLockReadOnly
                ' Do Until MST.EOF <---- Comment ก็ทำให้ไม่วนลูปสิครับ !!
                 '  Debug.Print MST!keyword
                        If cc = MST!Keyword Then <---- เช็คดีๆว่า เปรียบค่าของ cc กับ MST!Keyword ใช่สิ่งที่ต้องการหรือไม่
                 '  MsgBox MST!Category & " --- " & MST!Value
                            TRN.Update MST!Category, MST!Value <---- แน่ใจหรือไม่ว่าอัพเดตด้วย MST!Value
                            ' Debug.Print MST!Category
                        End If
                        MST.MoveNext
                ' Loop
                    MST.Close
                End If
ช่วยพกถุงผ้า/ถุงพลาสติกใช้แล้วไปซื้อของเพื่อลดการใช้พลาสติก ขยะ รักษาสิ่งแวดล้อม และไม่ให้ภาวะโลกร้อนวิกฤติเร็วขึ้นกว่านี้
ช่วยคลิกโฆษณาข้างล่างนี้ เพื่อสนับสนุนเวปบอร์ดด้วยครับ
:nice day:
 
โพสต์นี้ได้รับคำขอบคุณจาก: sjs

12 ก.ย. 63 , 08:50:20
ตอบกลับ #2

honeypiez19

  • สมาชิกไท.Access
  • กระทู้: 8

  • ขอบคุณ ไท.Access

    • ดูรายละเอียด

: ค่าออกเหมือนกันค่ะ #มือใหม่หัดเขียน
« ตอบกลับ #2 เมื่อ: 12 ก.ย. 63 , 08:50:20 »
เพราะไม่ได้บอกอะไรมาเลย ก็เดานะครับว่า 3 ตำแหน่งที่เป็นสีแดง อาจเป็นจุดที่ทำให้ผิดพลาดได้ นอกจากนี้ ก็เช็คด้วยว่าค่าใน tblKeyword ถูกต้องหรือไม่

                If Len(cc) > 0 Then
                    MST.Open "tblKeyword", CON, adOpenStatic, adLockReadOnly
                ' Do Until MST.EOF <---- Comment ก็ทำให้ไม่วนลูปสิครับ !!
                 '  Debug.Print MST!keyword
                        If cc = MST!Keyword Then <---- เช็คดีๆว่า เปรียบค่าของ cc กับ MST!Keyword ใช่สิ่งที่ต้องการหรือไม่
                 '  MsgBox MST!Category & " --- " & MST!Value
                            TRN.Update MST!Category, MST!Value <---- แน่ใจหรือไม่ว่าอัพเดตด้วย MST!Value
                            ' Debug.Print MST!Category
                        End If
                        MST.MoveNext
                ' Loop
                    MST.Close
                End If

ได้แล้วค่ะอาจารย์ ใช้ if เช็คค่าช่องเอาค่ะ ขอบคุณนะคะ

 


บอร์ดเรียนรู้ Access สำหรับคนไทย