แสดงกระทู้

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

หน้า: [1]
1
ขอบคุณมากครับอาจารย์สันติสุข ทำได้แล้วครับ ตามตัวอย่างครับ

โค๊ด: [Select]
Private Sub Barcode_AfterUpdate()
If Not IsNull(DLookup("C_ID", "Customer", "C_ID = " & Me.[Barcode])) Then
   Parent.[Bill_Customer] = Me.[Barcode]
   Parent.Dirty = False
   Me.Barcode.Value = Null

ElseIf Not IsNull(DLookup("P_ID", "Product", "P_ID = '" & Me.[Barcode] & "' ")) Then
  [Bii_product] = Me.[Barcode]
  Me.Barcode.Value = Null
 
  DoCmd.GoToRecord , , acNewRec

End If

2





ผมคิดไม่ออกครับอาจารย์ครับช่วยผมทีปัญหาของผมคือ
เมือสแกนสินค้าหรือสแกนบัตรสมาชิก ที่ช่องหมายเลข 1 ซึ่งผมต้องการกำหนดให้เป็น 2 เงื่อนไขคือ
เงื่อนไขที่ 1 ถ้าแสกนสินค้า แล้วรหัสตรงกับข้อมูลในตารางProduct ให้หมายเลข2 ไม่มีการเปลี่ยนแปลง แต่จะเพิ่มที่หมายเลข 3 ซึ่งเป็นรหัสสินค้า
เงื่อนไขที่ 2 ถ้าแสกนบัตรสมาชิก ที่ช่องหมายเลข 1 เหมือนกัน แล้วข้อมูลรหัสตรงกับข้อมูลในตาราง customer ให้หมายเลข3 ไม่มีการเปลี่ยนแปลง แต่จะเปลี่ยนแปลงที่หมายเลข 2 ซึ่งเป็นรหัสสมาชิก
ไม่ทราบว่าต้องใส่คำสั่งเงื่อนไขแบบไหนครับ
รบกวนอาจารย์หรือท่านผู้รู้ช่วยทีครับ

3
ห้อง MS Access / > Update field in table
« เมื่อ: 12 พ.ค. 61 , 00:22:10 »
อีกวิธีครับง่าย ๆ ผมใช้อยู่

4
ได้แล้วครับ ใช้โค้ดตามนี้ครับ
ขอบคุณอาจารย์สันติสุข และอาจารย์pizza_p ด้วยน่ะครับ

โค๊ด: [Select]
If MsgBox("คุณต้องการบันทึกยอดขาย ใช่ หรือ ไม่", vbInformation + vbYesNo, "แจ้งเตือน") = vbYes Then
  If IsNull(DLookup("R_DATE", "Report_Sale", "[R_DATE] = " & CDbl(Me.Date_Re))) Then
   DoCmd.RunSQL "INSERT INTO Report_Sale(R_DATE, R_PRICE, R_SALE,R_CARD,R_CREDIT,R_IN_CREDIT,R_GP) " & _
"VALUES (" & CDbl(Me.Date_Re) & ", " & Me.t01 & ", " & Me.t02 & ", " & Me.t03 & ", " & Me.t04 & ", " & Me.t05 & ", " & Me.t06 & ")", dbFailOnError
  Else
   DoCmd.RunSQL "UPDATE Report_Sale SET R_Price = " & Me.t01 & ",R_SALE = " & Me.t02 & ", R_CARD = " & Me.t03 & ", R_CREDIT= " & Me.t04 & ", R_IN_CREDIT = " & Me.t05 & ", R_GP = " & Me.t06 & " WHERE R_DATE = " & CDbl(Me.Date_Re)
  End If
End If


5
ขอบคุณครับคุณ pizza_p
ผมลองก๊อปปี้โค้ด ไปทำแล้วมันเกิด error ครับ



ไม่ทราบว่าเกิดจากอะไร ช่วยดูให้หน่อยน่ะครับ
ขอบคุณครับ

6
ขอโทษที่ตอบช้าครับ
Short Date และ Long Date


7
ขอสอบถามอาจารย์สันติสุข อีกหน่อยครับ โค้ดที่อาจารย์ให้ ทำไมบางเดือนมันกลับเดือนกลับวันกันครับ
เช่น 1/2/2561 มันจะกลับเป็น 2/1/2561 และอีกหลาย ๆ วันครับไม่ทราบว่าเป็นเพราะอะไรยิ่ง เดือนมีนาคม เป็นทุกตัวเลยครับ





รบกวนหน่อยน่ะครับ ไม่ทราบว่ามันเป็นกับอะไรครับ

8
อ้อครับ ผมก็อปแค่ข้อมูลบางส่วนในฐานข้อมูลผมครับ ไม่สง่วนครับเอาไปลองปรับใช้กับฐานข้อมูลอื่น ๆ ดูครับ

9
ขอบคุณมากครับ ทำได้แล้วครับ ตรงที่ต้องการเลยครับ ผมงมหาตั้งนาน สุดท้ายเป็นเพราะ พ.ศ. นี่เอง
ขอบคุณอาจารย์มาก ๆ น่ะครับ

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




ตัวโปรแกรมครับ https://1drv.ms/u/s!AsCxhafs7TWdgWFhe0BK7zu05BYG

11
ขอคุณอาจารย์ครับ ผมลองทั้งสองวิธีแต่มันติด error ทั้งสองแบบเลยครับ ไม่ทราบว่ามันเป็นเพราะอะไร ผมงงมากเลยครับคิดไม่ออกเลยครับ








รบกวนด้วยครับ

12
ขอบคุณครับอาจารย์ผมลองทำตามแล้วมันได้อยู่ครับ แต่มันบันทึกเป็นไฟล์ใหม่ ผมอยากให้มันมันทึกซ้ำวันที่อันเดิมครับ เราต้องใส่เงื่อนไขอย่างไงครับ ให้อัพเดทเป็นวันที่เราต้องการ




ผมเขียนแบบนี้ครับ ไม่รู้ถูกหรือเปล่า

Private Sub Cmd_Report_Up_Click()

If MsgBox("คุณต้องการบันทึกยอดขาย ใช่ หรือ ไม่", vbInformation + vbYesNo, "แจ้งเตือน") = vbYes Then
CurrentDb.Execute "INSERT INTO Report_Sale(R_DATE, R_PRICE, R_SALE, R_CARD,R_CREDIT,R_IN_CREDIT,R_GP) " & _
"values('" & Me.Date_Re & "','" & Me.t01 & "','" & Me.t02 & "','" & Me.t03 & "','" & Me.t04 & "','" & Me.t05 & "','" & Me.t06 & "')", dbFailOnError

End If
End Sub

ถ้าผมต้องการใส่เงื่อนไขวันที่แบบนี้มัน Error ครับ

Private Sub Cmd_Report_Up_Click()

If MsgBox("คุณต้องการบันทึกยอดขาย ใช่ หรือ ไม่", vbInformation + vbYesNo, "แจ้งเตือน") = vbYes Then
CurrentDb.Execute "INSERT INTO Report_Sale(R_DATE, R_PRICE, R_SALE, R_CARD,R_CREDIT,R_IN_CREDIT,R_GP) " & _
"values('" & Me.Date_Re & "','" & Me.t01 & "','" & Me.t02 & "','" & Me.t03 & "','" & Me.t04 & "','" & Me.t05 & "','" & Me.t06 & "')", dbFailOnError
WHERE R_DATE = Me.Date_Re

End If
End Sub

ไม่ทราบว่าต้องเขียนอย่างไงครับ แนะนำด้วยครับ อาจารย์ สันติสุข

13
อยากจะสอบถามครับ คือว่าผมต้องการอัพเดทยอดขายโดยบันทึกยอดขายประจำวัน โดยสามารถบันทึกได้ตลอดและอัพเดทข้อมูลเป็นปัจจุบันด้วย

ซึ่งผมเขียนโค้ดตามนี้ครับ
Private Sub Cmd_Report_Up_Click()
On Error Resume Next
If MsgBox("คุณต้องการบันทึกยอดขาย ใช่ หรือ ไม่", vbInformation + vbYesNo, "แจ้งเตือน") = vbYes Then
CurrentDb.Execute "INSERT INTO Report_Sale(R_DATE, R_PRICE, R_SALE, R_CARD,R_CREDIT,R_IN_CREDIT,R_GP)" & _
"values('" & Me.Date_Re & "','" & Me.t01 & "','" & Me.t02 & "','" & Me.t03 & "','" & Me.t04 & "','" & Me.t05 & "','" & Me.t06 & "')"
End If
End Sub
แต่ปัญหามันคือ เมื่อผมขายสินค้าไปเพิ่ม แล้วบันทึกใหม่มันไม่อัพเดทยอดขายให้
ไม่ทราบว่าผมต้องเขียนโค้ดอย่างไงครับ
รบกวนอาจารย์ด้วยครับ

หน้า: [1]