สร้างฟอร์มรับสินค้า



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

05 ก.ย. 63 , 12:01:12
อ่าน 102 ครั้ง

Namfon Aiamsaard

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

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

สร้างฟอร์มรับสินค้า
« เมื่อ: 05 ก.ย. 63 , 12:01:12 »
หนูอยากเขียนสูตรในฟอร์มตรงแสดงโค้ทลักษณะคล้ายๆๆแบบนี้
คือหนูอยากให้หน้าฟอร์ม เวลาหนูพิมพ์ Inhouse มาแล้ว ให้ Customer กับ List มันขึ้นมาให้หน้าฟอร์มอัตโนมันติค่ะ
Private Sub Inhouse_AfterUpdate()
Me.Customer = DLookup("[cus]", "[Raw Material]", "Code='" & [Inhouse] & "'")
Me.List = DLookup("[name]", "[Raw Material]", "Code='" & [Inhouse] & "'")
End Sub
แล้วก็เวลาหนูคีย์รับเข้า InSupkg ให้มันเด่งขึ้นมาเองว่ากี่กิโลประมาณนี้คะ อันนี้หนูเอาใส่ไว้ในฐานข้อมูลไว้แล้วว่า รหัสสินค้าตัวไหนหน่วยบรรจุเท่าไหร่ หนูอยากให้มันหารกันเอง ยกตัวอย่าง สินค้า 11 ขนาดบรรจุอยู่ที่ 2 กิโล วันนี้เรารับสินค้า 11 มา 10 กินโล อยู่ก็อยากให้มันขึ้นมาเองเลยว่ารับเป็นกระป๋องมา 10
Sub Inhouse_AfterUpdate()
Dim cal1
cal1 = Nz([Insupkg], 0) / Nz([Intotalcanned], 0)
Me.Intotalcanned = Nz([cal1], 0) + 0
End Sub

 

05 ก.ย. 63 , 14:02:30
ตอบกลับ #1

UnKnown

: สร้างฟอร์มรับสินค้า
« ตอบกลับ #1 เมื่อ: 05 ก.ย. 63 , 14:02:30 »
*อย่าตั้งกระทู้ซ้ำครับ

อ้างถึง
Private Sub Inhouse_AfterUpdate()
Me.Customer = DLookup("[cus]", "[Raw Material]", "Code='" & [Inhouse] & "'")
Me.List = DLookup("[name]", "[Raw Material]", "Code='" & [Inhouse] & "'")
End Sub
Inhouse และ Customer กับ List รูปแบบของข้อมูลเป็นอย่างไร และมันเป็นเลข-ตัวอักษรตายตัวหรือ+1ขึ้นไปเลื่อยๆ?
ผมใช้ DLookup ไม่เป็นรอท่านอื่นครับ

อ้างถึง
Sub Inhouse_AfterUpdate()
Dim cal1
cal1 = Nz([Insupkg], 0) / Nz([Intotalcanned], 0)
Me.Intotalcanned = Nz([cal1], 0) + 0
End Sub
Dim cal1 As Variant หรือ As String กำหนดด้วยครับ
« แก้ไขครั้งสุดท้าย: 06 ก.ย. 63 , 23:06:59 โดย UnKnown »

 

10 ก.ย. 63 , 11:25:46
ตอบกลับ #2

PNR

: สร้างฟอร์มรับสินค้า
« ตอบกลับ #2 เมื่อ: 10 ก.ย. 63 , 11:25:46 »
อ้างถึง
Private Sub Inhouse_AfterUpdate()
Me.Customer = DLookup("[cus]", "[Raw Material]", "Code='" & [Inhouse] & "'")
Me.List = DLookup("[name]", "[Raw Material]", "Code='" & [Inhouse] & "'")
End Sub
อันนี้ใส่มาถูกต้องแล้ว ถ้า ฟิลล์ Code ชนิดข้อมูลเป็น String
แต่ถ้าชนิดของมูลเป็น Number ต้องแก้เป็นแบบนี้
Me.Customer = DLookup("[cus]", "[Raw Material]", "Code=" & [Inhouse] & "")
Me.List = DLookup("[name]", "[Raw Material]", "Code=" & [Inhouse] & "")


อ้างถึง
ยกตัวอย่าง สินค้า 11 ขนาดบรรจุอยู่ที่ 2 กิโล วันนี้เรารับสินค้า 11 มา 10 กิโล อยู่ก็อยากให้มันขึ้นมาเองเลยว่ารับเป็นกระป๋องมา 10
มันควรเป็น 5 กระป๋องหรือเปล่าครับ เพราะ บรรจุอยู่ที่ 2 กิโล รับมา 10 ก็ 10/2 = 5 หรือเปล่า ?
ถ้าจะนำมาคำนวน โดยในฟอร์มจะระบุ Inhouse แล้วให้มันทำการคำนวนขึ้นมานั้น
ใช้ การสร้างตัวแปรของแต่ละ ฟิลล์ ที่ต้องการแล้วใช้ Dlookup แต่ละฟิลล์มาเก็บไว้ในตัวแปรแล้วนำตัวแปรมาคำนวนครับ

โดยคุณต้องอธิบายว่า
1.อันไหนคือข้อมูลที่มาจากการกรอกบนฟอร์ม
2.อันไหนที่จะ ดึงข้อมูลจากฟิลล์ในตารางมาคำนวน
3.การคำนวนเป็นแบบไหน


เรียนเพื่อนสมาชิกและอาจารย์ทุกท่าน
ผมไม่ใช่อาจารย์และไม่ใช่ผู้ที่แตกฉานใน Access นะครับ
แค่ผู้หนึ่งที่แชร์ความรู้เท่าที่มี ถ้าหากอาจารย์ทุกท่านเห็นว่ายังไม่ถูกต้อง
กรุณาโพสตอบกระทู้ส่วนเนื้อหาที่น่าจะถูกต้องกว่าให้ด้วยเพื่อเป็นวิทยาทาน
 


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