ขอไฟล์ตัวอย่าง เลือกจังหวัด>อำเภอ>ตำบล
กระทู้เก่าบอร์ด อ.Yeadram

 7,039   24
URL.หัวข้อ / URL
ขอไฟล์ตัวอย่าง เลือกจังหวัด>อำเภอ>ตำบล

เคยเห็นฟอร์อม ที่เขาออกแบบให้คีย์ข้อมูลบุคคล เขามีตัวช่วยเรื่องข้อมูลที่อยู่
ซึ่งหนูไม่ทราบว่าเขาทำกันอย่างไร

ช่องแรกๆก็เป็นข้อมูลบุคคลประกอบด้วย ชื่อนามสกุลวันเดืนปีเกิด...........อันนี้หนูทำได้ค่ะ

ช่องถัดมาก็จะเป็นข้อมูลที่อยู่ประกอบด้วย บ้านเลขที่ จังหวัด อำเภอ ตำบล ...ตรงนี้
เขาทำให้มีตัวช่วย แบบไม่ต้องคีย์ โดยมีรายการให้เลือกที่น่าสนใจดังนี้ค่ะ

# ช่องจังหวัด ก็มีรายชื่อจังหวัดให้เลือกทั้ง 77 จังหวัด
# ช่องอำเภอ ก็จะมีรายชื่ออำเภอให้เลือก โดยจะมีเฉพาะชื่อำเภอที่อยู่ในจังหวัดที่เลือกไว้
# ชื่องตำบล ก็จะมีรายชื่อตำบลให้เลือก โดยจะมีเฉพาะชื่อตำบล ที่อยู่ในอำเภอและจังหวัดที่เลือกไว้

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

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

1 @R21185
รายละเอียดเพิ่มเติมนะคะ

ฟิลด์ในตารางจังหวัดมีดังนี้ค่ะ
     PROVINCE_ID     Number
     PROVINCE_CODE     Text
     PROVINCE_NAME     Text
     GEO_ID          Number

ฟิลด์ในตารางอำเภอมีดังนี้ค่ะ
     AMPHUR_ID     Number
     AMPHUR_CODE     Text
     AMPHUR_NAME     Text
     GEO_ID          Number
     PROVINCE_ID     Number

ฟิลด์ในตารางตำบลมีดังนี้ค่ะ
     DISTRICT_ID     Number
     DISTRICT_CODE     Text
     DISTRICT_NAME     Text
     AMPHUR_ID     Number
     PROVINCE_ID     Number
     GEO_ID          Number

หนูยังรอคอยความช่วยเหลืออยู่นะคะ
2 @R21186
ลองศึกษาดูแล้วกันครับ (ไม่ใช่ของผมนะ) http://access.crtrading.net/fileDownload2009.aspx?softwareID=39

ไม่ก็ลองหาในบอร์ดนี้ด้วยคำว่า จังหวัด หรือ อำเภอ ก็ได้ มีคนเคยถามกันไว้ก่อนหน้านี้นานแล้ว
3 @R21188
เคยลองค้นหาและลองโหลดตามที่คุณสันติสุขแนะนำดูแล้ว ไม่ใช่อย่างที่หนูต้องการค่ะ
4 @R21190
5 @R21191
ลองตามคุณ PichaiTC ได้โค๊ดที่คุณ TTT แนะนำไว้ตามนี้ค่ะ

ลองเขียนประมาณนี้ครับ เป็นตัวอย่าง สมมุติ ฟอร์มชื่อ Form1 Combobox ชื่อ Combo1,2,3 ทั้งหมดเป็น Unbound

Combo1:
Data > Row Source:
SELECT Provice.Province_Code, Provice.Province_Name FROM Provice;
Format > Column Count:
2
Format > Column Widths:
0cm;3cm
Event > After Update:
Me.Combo2 = ""
Me.Combo2.Requery
Me.Combo3 = ""
Me.Combo3.Requery

Combo2:
Data > Row Source:
SELECT Amphur.Amphur_Code, Amphur.Amphur_Name FROM Amphur WHERE Amphur.Province_Code = [Forms]![Form1].[Combo1];
Format > Column Count:
2
Format > Column Widths:
0cm;3cm
Event > After Update:
Me.Combo3 = ""
Me.Combo3.Requery

Combo3:
Data > Row Source:
SELECT District.District_Code, District.District_Name FROM District WHERE District.Amphur_Code = [Forms]![Form1].[Combo2];
Format > Column Count:
2
Format > Column Widths:
0cm;3cm

เป็นตัวอย่างนะครับ ลองทำและปรับใช้ดูครับ


หนูลองแกะทำตามดูก็ยังไม่ได้ค่ะ มันไม่มีข้อมูลอะไรออกมาให้เลือกเลย

หนูสร้างฟอร์มชื่อ Form1 ผูกกับคิวรี่1
คิวรี่1 รวมตารางทั้งสามไว้ค่ะ

ไม่ทราบว่าทำผิดตรงไหนบ้าง
6 @R21192
รูปตัวอย่างค่ะ

7 @R21193
ช่วยส่งไฟล์มาให้ผมหน่อยครับ

เดี๋ยวจะทำไฟล์ตัวอย่างไปให้

แต่ขอบ่ายๆ เย็นๆนะ วันนี้ติดสอน

mrtouch999@gmail.com
8 @R21194
ส่งไฟล์ไปให้แล้วนะคะ
รบกวนช่วยแก้ไขให้ด้วยนะคะ
ขอบคุณค่ะ
9 @R21195
ทำตัวอย่างเสร็จแล้วและส่งกลับไปแล้วนะครับ
ลองเอาไปศึกษาดู เป็นวิธีการแบบง่ายๆ
10 @R21196
ได้รับไฟล์แล้วค่ะ (รวดเร็วมากๆ)

ดูโครงสร้างและวิธีการทำมันไปคนละทางกับที่หนูทำไว้เลยค่ะ
แต่ก็ให้ผล ได้ตรงตามที่หนูต้องการทุกประการ เอาแบบนี้เลยค่ะ

ด้วยความขอบพระคุณอย่างยิ่งค่ะคุณธัชชัย
11 @R21197
วิธีการนี้จะมีประโยชน์ตอนที่มีการเปลี่ยนแปลงข้อมูลเช่น

1. ถ้ามีจังหวัด/อำเภอ/ตำบลใหม่เกิดขึ้น
2. ถ้ามีการเปลี่ยนแปลงชื่อ อำเภอ/ตำบล
3. อื่นๆ ที่นึกไม่ออก
12 @R21198
ขอสอบถามเพิ่มเติมค่ะ
รายชื่อตำบล หลายชื่อเห็นมีเครื่องหมาย * (ดอกจันทร์) อยู่ด้วย
อันนี้มีความหมายอะไรหรือเปล่าคะ หากจะลบ* ออก จะมีผลกระทบอะไรหรือเปล่า

ขอบคุณค่ะ
13 @R21203
อันนี้ผมไม่ทราบครับ
เพราะผมนำไฟล์ของคุณมาใช้ทำตัวอย่างเลย ซึ่ง * มันก็ติดมาตั้งแต่แรกแล้ว

ทีแรกผมก็งงๆ อยู่เหมือนกันว่าจะมีไปทำไม

แต่พอดีไม่ใช่สาระสำคัญอะไร ผมก็เลยไม่ได้สนใจอะไรต่อ

คุณต้องไปถามคนที่ให้ข้อมูลนี้กับคุณมาว่ามันหมายถึงอะไร

แต่ถ้าจะลบออก ก็ไม่น่าจะมีปัญหาอะไรนะครับ

ปล. เวลาลบ ก็อย่าสั่งให้หา * นะครับ ให้ใช้คำสั่ง Ctrl+ R หา [*] แทน
14 @R21222
ขอสอบถามประเด็นเพิ่มเติมค่ะ

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

หนูได้เพิ่มช่อง [รหัสไปรษณีย์] เข้ามาอีกหนึ่งช่องค่ะ



ประเด็นของหนูก็คือ หนูสังเกตุว่าในหนึ่งตำบลของอำเภอนั้นๆ
มันจะมีแค่เลขรหัสไปรษณีย์เพียงรายการเดียว(ไม่มีรายการอื่นให้เลือก)

หนูจึงอยากให้ เมื่อเราเลือกจังหวัด>อำเภอ>ตำบล แล้ว
ให้เลขรหัสไปรษณีย์ มันเข้ามาในช่อง [รหัสไปรษณีย์] เองเลย
โดยที่เราไม่ต้องไปเสียเวลาเลือก
เพราะเลือกไปมันก็มีอยู่เพียงรายการเดียวเท่านั้น

ขอขอบคุณค่ะ
15 @R21223
ทำไมไม่ใช้การใส่รหัสไปรษณีย์เพียงฟิลด์เดียว แล้วให้ข้อมูลอื่นขึ้นมาให้ล่ะจ๊ะ
ใช้ dlookup ก็ได้ในการเลือกฟิลด์อื่นๆ

16 @R21228
เรียนคุณธัชชัย
เวลาคีย์ข้อมูล จะใช้ข้อมูลจากบัตรประชาชน ซึ่ง ในบัตรประชาชนมันไม่มีรหัสไปรษณีย์ค่ะ
รหัสไปรษณีย์ จะได้จากฐานข้อมูลของเรา โดยต้องรู้จังหวัด>รู้อำเภอ>และรู้ตำบลก่อน
จึงจะรู้รหัสไปรษณีย์ในขั้นตอนสุดท้าย

ไฟล์ตัวอย่างที่คุณธัชชัยกรุณาทำให้เป็นแนวทางนั้น มันใช้งานได้ดีเยี่ยมอยู่แล้ว
ตอนนี้หนูติดอยู่เพียงอย่างเดียว คือต้องการให้รหัสไปรษณีย์มันเข้าไปเองโดยอัตโนมัติ
หลัจากช่อง[ตำบล] Update แล้วก็ให้รหัสไปรษณีย์มันเเข้าประจำที่โดยอัตโนมัติ โดยไม่ต้องไปคลิกเพื่อเลือก

คือ..ทันทีที่เราเลือก[จังหวัด]>[อำเภอ]>และ[ตำบล]ตามลำดับแล้ว สุดท้าย [รหัสไปรษณีย์] มันก็จะมีอยู่เพียงบรรทัดแรกบรรทัดเดียวเท่านั้น
หนูจึงอยากหาวิธีว่าจะทำอย่างไรให้ [รหัสไปรษณีย์] ที่มันมีอยู่เพียงบรรทัดเดียวนั้น ถูกเลือกเข้าไปเลยโดยอัตโนมัติค่
17 @R21229
เพิ่มเติมรูป



จากรูปจะเห็นว่า [รหัสไปรษณีย์] เมื่อคลิกเลือก ก็จะมีอยู่เพียงบรรทัดเดียวเท่านั้นค่ะ
18 @R21230
แก้ไขรูปค่ะ ทำไมโพสรูปแล้วมันซ้ำรูปเดิมไปได้

19 @R21231
งั้นใช้วิธีนี้ครับ ง่ายๆคือ
ที่ Afterupdate ของตำบลให้ใส่คำสั่ง Dlookup เพื่อให้ดึงข้อมูลเข้าไปที่ฟิลด์ รหัสไปรษณีย์ครับ

ถ้าทำไม่ได้ ก็ส่งไฟล์มา
20 @R21238
หนูได้ส่งไฟล์ไปให้แล้ว
ขอความกรุณาคุณธัชชัยช่วยปรับปรุงแก้ไขให้หนูด้วยนะคะ
ขอบคุณค่ะ
@ ประกาศใช้งานเว็บบอร์ดใหม่ => บอร์ดเรียนรู้ Access สำหรับคนไทย
แล้วจะใส่ลิ้งอ้างอิงมาที่โพสต์เก่านี้หรือไม่ก็ตามสะดวกครับ
Time: 0.2793s