กระทู้เก่าบอร์ด อ.Yeadram
3,979 19
URL.หัวข้อ /
URL
ถามเรื่องการเขียนโค๊ดหน่อยครับ
คือ ผมหาๆอ่านกระทู้ที่มีคนโพสถาม ที่ผ่านๆมา ก็มีอยู่ กระทู้หนึ่งที่ ตรงความต้องการ
คือของคุณ TheBoy เรื่องตัดสต๊อก แต่ มันก็ งงๆ กับ ท่าน yeadram ที่เขียนไว้หน้า 2 (R02601)
sql ="Update tblProducts Set จำนวนในคลัง = จำนวนในคลัง เครื่องหมายตัวกระทำ " & [อ้างอิงลงไปตามลำดับขั้นจนกว่าจะถึง คอนโทรลทีแสดงจำนวนกา?ซื้อ] & " where รหัสสินค้า(ชื่อฟิลด์จริงในตาราง) = '" & [อ้างอิงลงไปตามลำดับขั้นจนกว่าจะถึง คอนโทรลทีแสดงรหัสสินค้าที่ต้องการอัพเดต] & "';"
แล้วก็ดูลิ้งตัวอย่างละทำตาม ผมก็ งง ละทำไม่ได้อยู่ดีเพราะทำตามลิ้ง พอรัน มันก็เกิด Bug และยังบอกว่า ไม่มีฟอร์มที่อ้างอิง
รบกวนช่วยอธิบาย คำว่า อ้างอิงลงไปตามลำดับขั้นจนกว่าจะถึง คอนโทรลทีแสดงจำนวนการซื้อ กับ อ้างอิงลงไปตามลำดับขั้นจนกว่าจะถึง คอนโทรลทีแสดงรหัสสินค้าที่ต้องการอัพเดต หน่อยครับผมไม่ค่อยเข้าใจ ถ้าท่านกรุณาและเมตตา โปรดเขียน ตัวอย่างที่ ชัดเจนให้หน่อยได้ไหมครับ เอาข้อมูลตาม กระทู้ ของคุณ Theboy เลยก็ได้ครับ คล้ายๆกัน รบกวนด้วยนะครับ ขอร้อง!!!
คือของคุณ TheBoy เรื่องตัดสต๊อก แต่ มันก็ งงๆ กับ ท่าน yeadram ที่เขียนไว้หน้า 2 (R02601)
sql ="Update tblProducts Set จำนวนในคลัง = จำนวนในคลัง เครื่องหมายตัวกระทำ " & [อ้างอิงลงไปตามลำดับขั้นจนกว่าจะถึง คอนโทรลทีแสดงจำนวนกา?ซื้อ] & " where รหัสสินค้า(ชื่อฟิลด์จริงในตาราง) = '" & [อ้างอิงลงไปตามลำดับขั้นจนกว่าจะถึง คอนโทรลทีแสดงรหัสสินค้าที่ต้องการอัพเดต] & "';"
แล้วก็ดูลิ้งตัวอย่างละทำตาม ผมก็ งง ละทำไม่ได้อยู่ดีเพราะทำตามลิ้ง พอรัน มันก็เกิด Bug และยังบอกว่า ไม่มีฟอร์มที่อ้างอิง
รบกวนช่วยอธิบาย คำว่า อ้างอิงลงไปตามลำดับขั้นจนกว่าจะถึง คอนโทรลทีแสดงจำนวนการซื้อ กับ อ้างอิงลงไปตามลำดับขั้นจนกว่าจะถึง คอนโทรลทีแสดงรหัสสินค้าที่ต้องการอัพเดต หน่อยครับผมไม่ค่อยเข้าใจ ถ้าท่านกรุณาและเมตตา โปรดเขียน ตัวอย่างที่ ชัดเจนให้หน่อยได้ไหมครับ เอาข้อมูลตาม กระทู้ ของคุณ Theboy เลยก็ได้ครับ คล้ายๆกัน รบกวนด้วยนะครับ ขอร้อง!!!
19 Reply in this Topic. Dispaly 1 pages and you are on page number 1
2 @R02645
ถ้าคุณมีฟอร์มย่อย
ในฟอร์มย่อยมี section
ในส่วนของท้ายฟอร์ม มีกล่องข้อความ เอาไว้ sum ยอดรวม มันชื่อ tamount
ถ้าคุณเขียนโด้ดในฟอร์มหลักและคุณจะอ้างถึงมัน
me.ฟอร์มย่อย.form.formfooter.controls("tamount")
เห็นไหมครับ ว่ามันตามลำดับ
ถ้าในฟอร์มย่อยของคุณมีคอนโทลแท็บฟอร์ม
ในแท็บฟอร์มมีหลายหน้า
ในหน้าที่สองมีฟอร์มย่อยอีก
ในฟอร์มย่อยนั้นมี ส่วนท้ายของฟอร์ม
ในส่วนท้ายของฟอร์มมี txamount
เวลาคุณอ้างมันจากฟอร์มหลักต้อง
me.ฟอร์มย่อย.form.controls("ชื่อแท็บ").pages("หลายเลขหน้า").controls("ชื่อฟอร์มย่อยในเพจนั้น").form.formfooter.controls("txamount")
อย่างนี้เรียกว่าอ้างอิงลงไปตามลำดับขั้น!
ในฟอร์มย่อยมี section
ในส่วนของท้ายฟอร์ม มีกล่องข้อความ เอาไว้ sum ยอดรวม มันชื่อ tamount
ถ้าคุณเขียนโด้ดในฟอร์มหลักและคุณจะอ้างถึงมัน
me.ฟอร์มย่อย.form.formfooter.controls("tamount")
เห็นไหมครับ ว่ามันตามลำดับ
ถ้าในฟอร์มย่อยของคุณมีคอนโทลแท็บฟอร์ม
ในแท็บฟอร์มมีหลายหน้า
ในหน้าที่สองมีฟอร์มย่อยอีก
ในฟอร์มย่อยนั้นมี ส่วนท้ายของฟอร์ม
ในส่วนท้ายของฟอร์มมี txamount
เวลาคุณอ้างมันจากฟอร์มหลักต้อง
me.ฟอร์มย่อย.form.controls("ชื่อแท็บ").pages("หลายเลขหน้า").controls("ชื่อฟอร์มย่อยในเพจนั้น").form.formfooter.controls("txamount")
อย่างนี้เรียกว่าอ้างอิงลงไปตามลำดับขั้น!
3 @R02654
แล้วที่ในส่วนของ ท่านเขียนไว้เกี่ยวกับ เรื่อง การใส่ me / him / them มันคืออะไรหรอครับ
4 @R02663
เขียนโค้ดในฟอร์มหลัก อ้างถึงสิ่งต่างๆ ในฟอร์มหลัก
ก็คือ อ้างถึง สิ่งต่างๆที่เป็นของของตัวเอง เราใช้ me. นำหน้า เพื่อบ่งบอกว่าเรียกถึง ของของตัวเอง
นั่นคือ me
ส่วน him และ them ให้ย้อนกลับไปอ่านครับ ผมแค่ยกตัวอย่าง ให้เข้าใจง่าย เพื่อเน้นความหมายของคำว่า me เท่านั้น เอามันมาใส่ใจด้วยเหรอครับ อิอิ
ก็คือ อ้างถึง สิ่งต่างๆที่เป็นของของตัวเอง เราใช้ me. นำหน้า เพื่อบ่งบอกว่าเรียกถึง ของของตัวเอง
นั่นคือ me
ส่วน him และ them ให้ย้อนกลับไปอ่านครับ ผมแค่ยกตัวอย่าง ให้เข้าใจง่าย เพื่อเน้นความหมายของคำว่า me เท่านั้น เอามันมาใส่ใจด้วยเหรอครับ อิอิ
5 @R02671
แบบ ตัดสต๊อกของคุณ Theboyง
sql ="Update tblProducts Set จำนวนในคลัง = จำนวนในคลัง เครื่องหมายตัวกระทำ " & [อ้างอิงลงไปตามลำดับขั้นจนกว่าจะถึง คอนโทรลทีแสดงจำนวนการซื้อ] & " where รหัสสินค้า(ชื่อฟิลด์จริงในตาราง) = '" & [อ้างอิงลงไปตามลำดับขั้นจนกว่าจะถึง คอนโทรลทีแสดงรหัสสินค้าที่ต้องการอัพเดต] & "';"
ช่วยเขียนแบบมีตัวแปร ตัว อ้างอิง ให้เห็นชัดๆหน่อยครับ ผมไม่ค่อยเข้าใจ
อย่าพึ่งเบื่อนะท่าน - -*
sql ="Update tblProducts Set จำนวนในคลัง = จำนวนในคลัง เครื่องหมายตัวกระทำ " & [อ้างอิงลงไปตามลำดับขั้นจนกว่าจะถึง คอนโทรลทีแสดงจำนวนการซื้อ] & " where รหัสสินค้า(ชื่อฟิลด์จริงในตาราง) = '" & [อ้างอิงลงไปตามลำดับขั้นจนกว่าจะถึง คอนโทรลทีแสดงรหัสสินค้าที่ต้องการอัพเดต] & "';"
ช่วยเขียนแบบมีตัวแปร ตัว อ้างอิง ให้เห็นชัดๆหน่อยครับ ผมไม่ค่อยเข้าใจ
อย่าพึ่งเบื่อนะท่าน - -*
6 @R02672
sql ="Update tbProducts Set total = total - " & val(text1) & " Where Code ='" & text2 & "';"
docmd.setwarning false
docdm.runsql sql
-------------------ในตาราง-------------
1) ตารางชื่ออะไรที่คุณเก็บสต็อกคงเหลือ?
2) ฟิลด์ชื่ออะไร ที่คุณเก็บสต็อกคงเหลือ? ชนิดข้อมูลเป็นอะไร (Long หรือ double)
3) ในเรคคอร์ดนั้น (แถว) มันอาจจะมีหลายฟิลด์(คอลัมภ์) อยากรู้ว่า ฟิลด์ชื่ออะไรที่คุณเก็บรหัสสินค้า? เก็บข้อมูลชนิดอะไร (Long หรือ Text)
------------------- ในฟอร์ม --------------
4) คอนโทรลใดที่เก็บ ที่แสดง รหัสสินค้า? เป็นคอนโทรลชนิดใด? ดูจากบรรทัดรายการที่คุณกำลังจะขาย หรือจะซื้อนั่นแหละ ขอย้ำ ต้องการชื่อคอนโทรล ไม่ใชชื่อฟิลด์
5) คอนโทรลใดที่แสดงตัวเลขจำนวน ที่จะขาย หรือจะซื้อ? ชนิดคอนโทรลคืออะไร? ชื่อมันคืออะไร?
sql = "Update (1) set (2) = (2) - (5) where (3) = (4)"
docmd.runsql sql
docmd.setwarning false
docdm.runsql sql
-------------------ในตาราง-------------
1) ตารางชื่ออะไรที่คุณเก็บสต็อกคงเหลือ?
2) ฟิลด์ชื่ออะไร ที่คุณเก็บสต็อกคงเหลือ? ชนิดข้อมูลเป็นอะไร (Long หรือ double)
3) ในเรคคอร์ดนั้น (แถว) มันอาจจะมีหลายฟิลด์(คอลัมภ์) อยากรู้ว่า ฟิลด์ชื่ออะไรที่คุณเก็บรหัสสินค้า? เก็บข้อมูลชนิดอะไร (Long หรือ Text)
------------------- ในฟอร์ม --------------
4) คอนโทรลใดที่เก็บ ที่แสดง รหัสสินค้า? เป็นคอนโทรลชนิดใด? ดูจากบรรทัดรายการที่คุณกำลังจะขาย หรือจะซื้อนั่นแหละ ขอย้ำ ต้องการชื่อคอนโทรล ไม่ใชชื่อฟิลด์
5) คอนโทรลใดที่แสดงตัวเลขจำนวน ที่จะขาย หรือจะซื้อ? ชนิดคอนโทรลคืออะไร? ชื่อมันคืออะไร?
sql = "Update (1) set (2) = (2) - (5) where (3) = (4)"
docmd.runsql sql
7 @R02696
ขอบคุณครับสำหรับโค้ด แต่ผมก็ทำไม่ได้อยู่ดี Error อ่ะ
อยากถามให้มากกว่านี้นะกลัวเบื่อสะก่อน = = เกรงใจ
อยากถามให้มากกว่านี้นะกลัวเบื่อสะก่อน = = เกรงใจ
8 @R02697
เอา error มาดูครับ อาจจะพอช่วยแก้ได้ตรงจุดมากกว่า
9 @R02704
งั้นผมถามใหม่ละกันนะ ไม่เอาปุ่มละ
ผมมี 2 ตารางที่ต้องการจะหายอดคงเหลือในคลัง โดยเอามาทำเป็น Qry ตารางแรก
ตารางสินค้า มีฟิลด์ = รหัส ชื่อสินค้า ราคา จำนวนคลัง
ตารางสั่งซื้อ มีฟิลด์ = รหัสสั่งซื้อ รหัสสินค้า จำนวนสั่งซื้อ ราคา ส่วนลด
คือผมจะเอา 2 ตารางนี้มาทำเป็น Qry เพื่อหา ยอดคงเหลือ คือ จะเอาจำนวนคลังกับจำนวนสั่งซื้อมาหักลบกัน แล้วก็จะได้ฟิลด์ยอดคลังคงเหลือ ต้องเขียนสูตรว่าไรมังครับ แต่อยากให้ ชื่อสินค้า แสดงออกมาไม่ซ้ำกันเลย ฟิลด์ที่ต้องการให้แสดงมี 2 ฟิลด์ คือ ฟิลด์ ชื่อสินค้า กับ ฟิลด์สินยอดสินค้าคงเหลือ(ที่เพิ่มมาในภายหลัง)
ขอบคุณครับ
ผมมี 2 ตารางที่ต้องการจะหายอดคงเหลือในคลัง โดยเอามาทำเป็น Qry ตารางแรก
ตารางสินค้า มีฟิลด์ = รหัส ชื่อสินค้า ราคา จำนวนคลัง
ตารางสั่งซื้อ มีฟิลด์ = รหัสสั่งซื้อ รหัสสินค้า จำนวนสั่งซื้อ ราคา ส่วนลด
คือผมจะเอา 2 ตารางนี้มาทำเป็น Qry เพื่อหา ยอดคงเหลือ คือ จะเอาจำนวนคลังกับจำนวนสั่งซื้อมาหักลบกัน แล้วก็จะได้ฟิลด์ยอดคลังคงเหลือ ต้องเขียนสูตรว่าไรมังครับ แต่อยากให้ ชื่อสินค้า แสดงออกมาไม่ซ้ำกันเลย ฟิลด์ที่ต้องการให้แสดงมี 2 ฟิลด์ คือ ฟิลด์ ชื่อสินค้า กับ ฟิลด์สินยอดสินค้าคงเหลือ(ที่เพิ่มมาในภายหลัง)
ขอบคุณครับ
10 @R02705
select [รหัสสินค้า], [จำนวนคงคลัง] - nz(pOut,0), as ยอดสินค้าคงเหลือ
From [ตารางสินค้า] left join
(select [รหัสสินค้า] as pCode, sum([จำนวนสั่งซื้อ]) as pOut from [ตารางสั่งซื้อ] Group by [รหัสสินค้า]) as q on [ตารางสินค้า].[รหัสสินค้า] = q.PCode
** ไม่ควรตั้งชื่อเป็นภาษาไทย
From [ตารางสินค้า] left join
(select [รหัสสินค้า] as pCode, sum([จำนวนสั่งซื้อ]) as pOut from [ตารางสั่งซื้อ] Group by [รหัสสินค้า]) as q on [ตารางสินค้า].[รหัสสินค้า] = q.PCode
** ไม่ควรตั้งชื่อเป็นภาษาไทย
11 @R02707
มันแสดงคำว่า ไวยากรณ์ไม่ถูกต้อง ครับ ผมก็พยายามช่วยดูนะว่าผิดตรงไหน
หาไม่เจอสักทัก
หาไม่เจอสักทัก
12 @R02708
- nz(pOut,0),
เอาเครื่องหมาย คอมม่า ออกจาก หลัง วงเล็บครับ
1 จุดนะครับ เท่าที่มองเห็นคงใช้ได้แล้วมั้ง
พอดีเขียนสด ไม่ได้เทสต์ครับ
เอาเครื่องหมาย คอมม่า ออกจาก หลัง วงเล็บครับ
1 จุดนะครับ เท่าที่มองเห็นคงใช้ได้แล้วมั้ง
พอดีเขียนสด ไม่ได้เทสต์ครับ
13 @R02715
เอาออกตามที่บอกละครับ ไวยากรณ์ไม่ถูกต้อง เหมือนเดิมเลย
14 @R02717
หลังจากผมเอา คอมม่าตัวส่วนเกินออกไปแล้ว คุณยังบอกว่ามี error
ผมจึงนำไปจำลองตารางขึ้นมาตามที่กล่าว (สร้างเฉพาะฟิลด์ที่จำเป็นสำหรับคิวรี่) แล้วผมก็เอา sql statement ที่ผมเขียนไปวางในคิวรี่เปล่าๆ อันหนึ่ง ลองรันดู ไม่มี error ใดๆ เลย
คุณแน่ใจว่า ชื่อฟิลด์ ชื่อตาราง ชนิดข้อมูล จากตารางต้นทางถูกต้องทั้งหมดแล้วหรือเปล่าครับ ลองเปรียบเทียบกับภาพประกอบของผมดูนะครับ
หลังจากผมเอา คอมม่าตัวส่วนเกินออกไปแล้ว คุณยังบอกว่ามี error
ผมจึงนำไปจำลองตารางขึ้นมาตามที่กล่าว (สร้างเฉพาะฟิลด์ที่จำเป็นสำหรับคิวรี่) แล้วผมก็เอา sql statement ที่ผมเขียนไปวางในคิวรี่เปล่าๆ อันหนึ่ง ลองรันดู ไม่มี error ใดๆ เลย
คุณแน่ใจว่า ชื่อฟิลด์ ชื่อตาราง ชนิดข้อมูล จากตารางต้นทางถูกต้องทั้งหมดแล้วหรือเปล่าครับ ลองเปรียบเทียบกับภาพประกอบของผมดูนะครับ
15 @R02718
รหัสสินค้า ใน ตารางสินค้า เป็๋นแบบ Autonumber อ่ะครับเกี่ยวกันไหมอันนี้ไม่ทราบนะ ผมพยายามเท่าที่ทำได้ละกันนะครับเพราะไม่มีความรู้เรื่องนี้ มีรูป ให้ดูละกันครับ
ผมเอาไปเขียนถูกที่ หรือป่าวก็ช่วยดูด้วยครับ
ผมเอาไปเขียนถูกที่ หรือป่าวก็ช่วยดูด้วยครับ
16 @R02748
ขอดันหน่อยละกันครับ
17 @R02751
ตอนแรกที่ผมไม่ตอบเพราะผมไม่เห็นรูป ตอนนี้ เห็นดันกระทู้มา ผมเลยพยายามตามหาว่ารูปมันอยู่ไหน แล้วไปเอารูปมาดู
พอดูรูปแล้ว ก็เข้าใจปัญหา
ที่ผมให้ไปน่ะ มันคือ sql statement ทั้งหมดเลย มันไม่ใช่ นิพจน์ครับ ไม่ได้เอาไปใส่ตรงนั้น บริเวณที่คุณเอาใส่น่ะ มันต้องเป็น แค่นิพจน์เท่านั้น
-ให้คุณสร้าง คิวรี่ตัวใหม่ขึ้นมาในมุมมองออกแบบ
-ไม่ต้องเพิ่มตารางอะไรเข้าไปเลย
-เปลี่ยนมุมมองของ คิวรี่ ให้เป็น มุมมอง SQL
- คุณจะเห็นมันเขียนคำว่า Select แค่คำเดียว ลบทิ้งไปได้เลยครับ
- บริเวณนี้แหละครับ ที่เราจะวาง statement ลงไป ให้คุณเอา statement ที่แก้ไขคำเรียบร้อยแล้ว วางลงไปตรงนี้เลยครับ (ปล. ถ้าชื่อฟิลด์ของคุณเป็น Eng หมดแล้วโดยไม่มีช่องว่างภายในคำ ก็ไม่ต้องใส่เครื่องหมาย สี่เหลี่ยมปิดหน้าหลังก็ได้)
- เสร็จแล้ว เปลี่ยนมุมมองของคิวรี่ตัวนี้ โดย..
.. ถ้าอยากเห็นผลเลย ให้เปลี่ยนไปเป็น มุมมองข้อมูล
.. ถ้าอยากเห็นการเชื่อมการลิงค์ ให้เปลี่ยนไปเป็น มุมมองออกแบบ
ลองใหม่ครับ
พอดูรูปแล้ว ก็เข้าใจปัญหา
ที่ผมให้ไปน่ะ มันคือ sql statement ทั้งหมดเลย มันไม่ใช่ นิพจน์ครับ ไม่ได้เอาไปใส่ตรงนั้น บริเวณที่คุณเอาใส่น่ะ มันต้องเป็น แค่นิพจน์เท่านั้น
-ให้คุณสร้าง คิวรี่ตัวใหม่ขึ้นมาในมุมมองออกแบบ
-ไม่ต้องเพิ่มตารางอะไรเข้าไปเลย
-เปลี่ยนมุมมองของ คิวรี่ ให้เป็น มุมมอง SQL
- คุณจะเห็นมันเขียนคำว่า Select แค่คำเดียว ลบทิ้งไปได้เลยครับ
- บริเวณนี้แหละครับ ที่เราจะวาง statement ลงไป ให้คุณเอา statement ที่แก้ไขคำเรียบร้อยแล้ว วางลงไปตรงนี้เลยครับ (ปล. ถ้าชื่อฟิลด์ของคุณเป็น Eng หมดแล้วโดยไม่มีช่องว่างภายในคำ ก็ไม่ต้องใส่เครื่องหมาย สี่เหลี่ยมปิดหน้าหลังก็ได้)
- เสร็จแล้ว เปลี่ยนมุมมองของคิวรี่ตัวนี้ โดย..
.. ถ้าอยากเห็นผลเลย ให้เปลี่ยนไปเป็น มุมมองข้อมูล
.. ถ้าอยากเห็นการเชื่อมการลิงค์ ให้เปลี่ยนไปเป็น มุมมองออกแบบ
ลองใหม่ครับ
18 @R02752
ขอบคุณมากเลยครับ ผมก็ งง ตั้งนาน ได้ละครับทำอย่างที่บอก
ขอถามอีกข้อเดียว คือ ตอนนี้มันแสดง รหัสสินค้า และจำนวนคงเหลือ
แต่ผมอยากได้ชื่อมันด้วยอ่ะครับ ให้มันมี เพิ่มชื่อสินค้าแสดงด้วยอ่ะครับ
ผมต้องทำยังไง
ขอถามอีกข้อเดียว คือ ตอนนี้มันแสดง รหัสสินค้า และจำนวนคงเหลือ
แต่ผมอยากได้ชื่อมันด้วยอ่ะครับ ให้มันมี เพิ่มชื่อสินค้าแสดงด้วยอ่ะครับ
ผมต้องทำยังไง
19 @R02753
ได้ละครับไม่ต้องละครับ ผมลองเพิ่ม
select [ProductID],[ProductName], [stok]
ก็ได้เลย ขอบคุณครับที่อยู่เคียงข้างกัน อิอิ
select [ProductID],[ProductName], [stok]
ก็ได้เลย ขอบคุณครับที่อยู่เคียงข้างกัน อิอิ
Time: 0.3288s
เพราะทั้งหลายทั้งปวง มันเป็น คุณสมบัติ มันเป็นลูกๆ มันเป็นสิ่งของ ของฟอร์มหลัก เช่น
ฟอร์มหลัก อ้างข้อมูลมามีฟิลด์ชื่อ id, docDate, amount
ฟอร์มหลัก มีคอนโทรล textbox ชื่อ tid, tdocDate, tamount
ฟอร์มหลักมี คอนโทรล subform ชือ child1 (อ้างอิงออปเจคฟอร์มย่อยชื่อ frm_invamount)
เมื่อเราเขียนโค้ดจะอ้างถึงสิ่งเหล่านี้เราอ้างตามหลัง me.
1) me.id ------- อ้างถึงตัวข้อมูล id ในเรคคอร์ดปัจจุบันเท่านั้น
2) me.tid --------- อ้างถึง ค่าใน textbox ไม่เกี่ยวกับข้อ 1 แม้มันอาจจะได้ค่าเดีวกันก็ตามของให้รู้ว่า มันคนละเรี่องกัน อันหนึ่งอ้างถึง ข้อมูลจากแหล่งเดิม อันหนึ่งอ้างถึง ตัวหนังสือใดๆ ที่ปรากฏใน textbox อาจจะมาโดยอัตโนมัติ หรือถูกแก้ไขแล้วโดยมนุษย์ก็ได้
3) me.refresh -------เรียกใช้ method
4) me.allowaddition=true ------------- ตั้งค่า properties
5) me.child1--------------- ถ้าข้อมูลตามตัวอย่างนี้ หมายความว่าเรากำลังอ้างถึงคอนโทรลชนิดหนึ่ง นั่นคือ subform บน 1 ฟอร์มหลัก อาจจะมีหลายฟอร์มย่อยก็ได้ การอ้าง child1 ก็หมายถึง control ตัวที่ชื่อ child1 ฟอร์มย่อยอื่นๆ ก็จะไม่ได้รับผลกระทบ
6) me.frm_invamount ..........ถ้าข้อมูลตามตัวอย่าง .... หลายๆ คนมักจะให้ วิซาร์ดช่วยสร้างฟอร์มย่อย และวิซาร์ด ก็มักจะตั้งชื่อคอนโทรลให้โดยอัตโนมัติ โดยมันไม่ตั้ง child1 child2 ตามลำดับ มันกลับไปเอาชื่อออบเจคแหล่งข้อมูล มาตั้งให้แทน ดังนั้น me.frm_invamount จึงมีค่าเท่ากับ me.child1
เราสามารถอ้างตัวย่อยของ subform ได้โดยระบุตามลำดับลงไป
me.child1.controls("....ชื่อคอนโทรลในฟอร์มย่อย....).
me.frm_invamount.form.controls("....ชื่อคอนโทรลในฟอร์มย่อย....)
บรรทัดต่อมาต้องเขียนคำว่า .form เพิ่มเข้า เพราะคำว่า frm_invamount เป็นชื่อของสองสิ่ง เมื่อเราอ้างเราต้องบอกด้วยว่า มันเป็นชื่อของอะไร
นั่นคือตัวอย่างการใช้ me. สรุปคือ อ้างถึง สั่งถึง เรียกจาก ทุกๆ สิ่งที่เป็นของฟอร์มหลักเท่านั้น