Access : จุดเริ่มต้นที่ง่ายที่สุดสำหรับการเรียนรู้ ระบบฐานข้อมูล
Access : จุดเริ่มต้นที่ง่ายที่สุดสำหรับการเรียนรู้ การเขียนโปรแกรม
Access : เป็นได้ทั้งตัวเก็บฐานข้อมูล และตัวจัดการฐานข้อมูล
Thai Access : บอร์ดเสริมการเรียนรู้ Access ด้วยภาษาไทย

น้อมรำลึกในพระมหากรุณาธิคุณอันหาที่สุดมิได้ พระบาทสมเด็จพระปรมินทรมหาภูมิพลอดุลยเดชฯ พระผู้เสด็จสู่สวรรคาลัย

Back to Board : Thai Access Webboard New Topic    Reply
จำกัดข้อมูลซ้ำและการดึงข้อมูลก่อนหน้า

Topic by Message Posted : on : 18/7/2560 16:24:00
มือ ใหม่ ค่ะ   มี 2 เรื่องด้วยกันที่จะสออบถามอาจารย์ทุก ท่านค่ะ

สร้าง ตาราง 1 ตาราง มี ฟิลด์ Date (Date/time)/ Machine(number) /DataOld (text) / DataNew(text)

เรื่องที่ 1 การบันทึกข้อมูลซ้ำ
โดยที่จะบันทึกข้อมูลใส่ ทั้ง 2 ฟิลด์ดังนี้

Date                    machine
17/7/2560               1
17/7/2560               2

แต่ถ้าคีย์ซ้ำวันที่ 17 ไปอีกรอบ ไม่ว่าเครื่องใดก็ตามให้แสดงว่าบันทึกข้อมูลซ้ำ ไม่สามารถให้บันทึกได้

เรื่องที่ 2 การดึงข้อมูลก่อนหน้ามาแสดง ในฟอร์มการบันทึก เมื่อคีย์ข้อมูลลงไปแล้ว ให้ดึงฟิลด์ข้อมูล DataNew ของข้อมูลที่บันทึกไปล่าสุด มาแสดงในTextbox ของ Dataold เพื่อที่จะบันทึกในฟิลด์ Dataold ข้อมูลใหม่ในครั้งนั้นๆ ประมานนี้ค่ะ

หาอธิบายไม่เข้าใจ ต้องขออภัยด้วยน่ะค่ะ มือใหม่ค่ะ

ขอบคุณค่ะ

14 Reply in this Topic. Dispaly 2 pages and you are on page number 2

Reply by Message on : 26/7/2560 16:10:04
pizza_p
(R23852)
เอามาใส่ในฟอร์มนี้เลยครับ
Back to Top
Reply by Message on : 27/7/2560 9:28:16
มือ ใหม่ ค่ะ
(R23853)
ขอบคุณมากเลยนะค่ะ คุณ Pizza_p เรื่องที่ 2 ทำได้แล้วค่ะ

รบกวนอีกเรื่องนึงค่ะ ในเรื่องที่ 1 การดึงข้อมูลก่อนหน้า มาแสดง คะ

ติดปัญหาตรงที่ในโค้ด Date ต้องเป็น Key หลัก แล้วห้ามซ้ำ โค้ดถึงจะทำการดึงข้อมูลมา แต่ ที่ต้องการคือ Date กับ machine สามารถซ้ำได้

เช่น

Date            Machine        Datanew      Data old
24/7/2560        1                  2222           1111
24/7/2560        2                  4444            3333

พอเริ่มวันที่ ใหม่
25/7/2560        1                 รับค่าใหม่        2222 (ดึงข้อมูลมาจากDataNew ของวันที่ 24/7/2560 machine 1 )
25/7/2560          2               รับค่าใหม่        4444 (ดึงข้อมูลมาจากDataNew ของวันที่ 24/7/2560machine 2)

ประมานนี้คะ

Back to Top
Reply by Message on : 27/7/2560 14:05:02
pizza_p
(R23855)
ให้เพิ่มโค้ดนี้ไปแทนครับ

Private Sub Machine_AfterUpdate()
Dim dLast As Variant, stData As String

dLast = DMax("[Date]", "ชื่อตาราง", "[Machine] = " & Me.Machine)
If IsNull(dLast) Then
    stData = ""
Else
    stData = DLookup("[DataNew]", "ชื่อตาราง", "[Date] = " & CDbl(dLast) & " AND [Machine] = " & Me.Machine)
End If

Me.DataOld = stData

End Sub
Back to Top
Reply by Message on : 29/7/2560 8:45:12
มือ ใหม่ ค่ะ
(R23858)
ได้แล้วค่ะ ขอบคุณ คุณPizza_P มากๆเลยน่ะค่ะ
Back to Top
Page:   << Prev 1 2

Reply

 *Indicates required fields
Format:
Bold Under Line Italic Add Hyperlink Add Email Link Italic List Indent Add Image Emoticons Insert code Mode:
Message:*
Your Name*:
Normal word*: Please input : ไทยแอ็คเซส
+++ webboard source: ASPThai.Net Webboard 6.0 webbord +++++++ admin : yeadram +++