ช่วยหนูด้วย
กระทู้เก่าบอร์ด อ.สุภาพ ไชยา

 506   14
URL.หัวข้อ / URL
ช่วยหนูด้วย

อยากถามเกี่ยวกับโปรแกรมค่ะ คือว่าโปรแกรมที่ทำอยู่เป็นโปรแกรม ร้านเช่าหนังสือ หนูอยากให้ อ.ช่วยปรับปรุงตวโปรแกรมให้ด้วยค่ะ
1. ใน Form Card ต้องการหา Digit ที่ 4 ของ No. ,วันที่เช่า(วัน/เดือน/ปี) , เดือนที่สมาชิกหมดอายุ(E_date)
โดยที่เลือก Digit , Date , E_date แล้วคลิกที่ปุ่ม Select ผลลัพธ์ที่เลือกก็จะโชว์ขึ้นมา หรือจะเลือกแต่เฉพาะตัวใดตัวหนึ่งก็ได้
2. Form Customer ใช้กรอกสถานะของลูกค้าที่ต่อสมาชิกโดยถ้าหมายเลขสมาชิกใดมีสถานะเป็น No ข้อมูลใน Table Card ของคนนั้นก็จะถูกลบไป
แต่ใน Table Customer จะยังคงเก็บข้อมูลของคนคนนั้นอยู่ (กด save แล้วจึง ลบ)
3. Report ต้อง Print ทุกเดือน คือทุกวันที่ 1 ของเดือน ตามหัว Report จะแยกตามชื่อสมาชิกที่เช่าหนังสือ เช่น ชื่ออะไร เช่าหนังสือประเภทไหน
4. ในการเปิดโปรแกรมต้องการให้ Form Password ขึ้นมาอัตโนมัติ โดยที่ Form Password จะใส่ได้ 2 Password (Password แรก "AAA" จะใช้เปิด
Form Menu )(Password ที่ 2 "BBB" จะใช้เปิด Form Menu 1)

หวังว่าหนูคงไม่รบกวน อ. เกินไปนะคะ ช่วยด้วยค่ะเพราะหนูจะส่งรายงานแล้ว คิดจนปวดหัวแล้วค่ะ
( ปล.หนูไม่ได้กำหนด Key หลักเพราะหมายเลขสมาชิกมีซ้ำกันเพราะใน 1 เดือน หมายเลขเดียวกันอาจเช่าหลายครั้ง)

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

1 @R03462
ให้ลองเป็นข้อๆ ไปเลยนะครับ

1. ลองดูกระทู้ http://www.thai-access.com/suphap.php?topic_id=1428 ครับ จะใช้หลักการเดียวกัน

ทำเป็นข้อๆ ไปนะครับ เราจะได้เรียนรู้ไปพร้อมๆ กัน

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

2 @R03472
ลองทำดูแล้วค่ะ แต่หนูค้นหาวันที่จาก Date ไม่ได้ค่ะ คือ พิพม์11-06-2003
แล้วกด Select ข้อมูล จะขึ้นค่ะ อ.ช่วยเขียนให้ดูได้ไหม คะ
หนูขอเพิ่มอีกตัวค่ะ คือ เมื่อค้นหาแล้ว หน้าที่ค้นหาต้องการ พิมพ์ Report ออกมาค่ะ เช่น ค้นหา Digit ที่4 ของรหัสลูกค้า พอข้อมูลขึ้นมา กดปุ่ม Print ข้อมูลก็จะ Print ออกมา ช่วยหนูหน่อยนะคะ
ข้อ 2,3,4 ด้วยนะคะ ไม่งั้นหนูตายแน่เลย
3 @R03473
ลองใส่โค้ดนี้ในเหตุการณ์ AfterUpdate ของ Text14 ดูครับ

Private Sub Text14_AfterUpdate()
Dim strFilter As String
strFilter = "Day([date])=" & Me.ActiveControl
Me.FilterOn = True
Me.Filter = strFilter
End Sub

*** ไม่ควรตั้งชื่อฟีลด์ให้ตรงกับคำสงวนของ Access ต่างๆ เช่น
Date, Time, Count, Name, Report, ...
4 @R03476
แล้วเรื่องของการ Print Report ล่ะคะ ต้องการให้หน้าที่ค้นหา Print ออกมาเป็น Report ไม่ทราบว่าทำอย่างไรคะ ช่วยหนูด้วย ข้อที่เหลือด้วยนะคะ
5 @R03478
ผมได้ลองทำตัวอย่างดูเล่นๆ เพื่อศึกษา ติดตรงเลือกวันที่น้องเขาถามเหมือนกันครับ ผมเลยขอส่งตัวอย่างมาให้อาจารย์ดูเผื่อว่า รอยยักในสมองจะได้เพิ่มอีกนิดครับ
ขอบคุณครับ
ปล. น้องเด็ก ม. 4 ตัวอย่างที่ผมลองทำดูนี้ได้ปรับโครงสร้างหน่อย แต่ก็อยู่ในความต้องการที่แจ้งไว้ (ยังไม่ได้เก็บรายละเอียดเท่าไหร่นะ)
6 @R03480
ใส่โค้ดนี้ไปในเหตุการณ์ OnLoad ของ Report เป้าหมาย

Private Sub Report_Open(Cancel As Integer)
Me.FilterOn = True
Me.Filter = Forms!ชื่อฟอร์ม.Form.Filter
End Sub

จากโค้ด จะเป็นการส่งค่า Filter ของ Form ไปยัง Report ครับ

หรือจะลองค้นด้วยคำว่า Me.Filter ดูประกอบด้วยครับ


7 @R03502
ขอบคุณนะคะที่เสียสละเวลาตอบคำถามหนู หนูขอถามเพิ่มนะคะ คือว่าหนูจะ Print Prpotr ทุกวันที่ 1 ของเดือนโดยหนูลองเอาโค๊ด ในคำตอบอื่นมาเขียนดูค่ะดังนี้
Between DateSerial(Year(Date), Month(Date), 1) And DateSerial(Year(Date), Month(Date)+1, 1)
(เขียนในQueryในช่องวันที่) พอรันดูขึ้นดังนี้ค่ะ
[Data Type Mismatch In criteria Expression ]
ไม่ทราบว่ามีวิธีแก้ไขไหมคะ และเรื่องของ Report ค่ะคือว่าหัว Report ขึ้นตามชื่อใครชื่อมันแต่ไม่เป็นกลุ่ม เช่น นายไพศาล เช่าหนังสือ นิยาย และนิตยสาร แต่Report ออกมา 2 หน้า คือ นายไพศาลเช่านิยาย และอีกหน้าก็ นายไพศาลเช่านิตยสาร หนูอยากให้ 1 คน ต่อ1 แผ่น(หรือมากกว่านั้นตามหนังสือที่เช่า) คือ นายไพศาลเช่านิยายและนิตยสารในหน้าเดียวกันช่วยตอบคำถามหนูด้วยนะคะคำถามอาจวกไปวนมาค่ะช่วยตอบด้วยนะคะ

8 @R03503
ลอง

Between DateSerial(Year(Date๖๗), Month(Date()), 1) And DateSerial(Year(Date()), Month(Date())+1, 1)

ส่วนรายงานนั้น ให้ลองสร้างขึ้นมาใหม่อีกอันหนึ่ง ปัญหาดังกล่าวน่าจะหายไป

ควรจะใช้ Report Wizard ช่วยสร้าง ถ้าสร้างยังไม่ถูกใจ ก็ให้ลองใหม่ โดยให้เลือก Group By รหัสของสมาชิก

9 @R03539
หนูมีคำถามอีกแล้วค่ะ
1. ใน Form Card หนูได้เขียนโค๊ดที่ อ. ให้มาเอาไปใส่ใน Onlode ของ Form Card พอพิมพ์เสร็จมันรันไม่ผ่านค่ะฟ้องที่บรรทัดที่แสดงชื่อ form คือ"Me.Filter=Form!Card Form.Filter ค่ะหนูเลยอยากถามว่าหนูจะต้องแก้ไขตรงไหนบ้างคะ อ. ช่วยแนะนำด้วยนะคะ
2. ค้นหา Digit,Date,Est_Date รวมกันโดยใช้ปุ่ม Select เป็นปุ่มค้นหาได้ไหมคะ
10 @R03542
1. ให้ใส่ [ ] ให้กับชื่อฟอร์มที่มีช่องว่างด้วย

Me.Filter=Form![Card Form].Filter

2. ให้ดูตัวอย่างการทำ Dynamic Query ที่ http://agserver.kku.ac.th/basiceng/Computer/download/DynamicQuery.zip

หรือศึกษากระทู้ http://www.thai-access.com/suphap.php?topic_id=1109 ประกอบด้วยครับ *** Edited by Supap Chaiya *** 14/6/2546 20:22:30
11 @R03695
หนูมีคำถามค่ะ คำถามเดิม ๆ แต่ทำแล้วทำไม่ได้ค่ะ รบกวนด้วยนะคะ
1. จะค้นหาทั้ง 3 อย่าง (digit,Est,dare) ทีเดียวโดยใช้ปุ่ม Select ค่ะ ที่หนูทำคือ ค้นหาได้อย่างเดียว
2. เวลาค้นหาข้อมูลแบบ AllData แล้ว preview ดูใน Report จะแสดงข้อมูลไม่หมดค่ะแสดงเฉพาะข้อมูลที่เราค้นหาก่อนหน้าที่จะกด Alldata ดู
3. อยากให้ Form 1 เวลา Print Report ให้ขึ้นชื่อคนที่ใช้งานด้วยค่ะ (เช่น ใช้ Password "aaa" เข้ามา ชื่อผู้ใช้คือสมชายให้โชว์ชื่อสมชายที่ Report ค่ะ
4. เวลาเปิดเครื่องอยากให้ Form password โชว์ขึ้นมาให้กรอก password โดยที่ผู้ใช้ไม่สามารถ ได้เห็นตารางที่เราทำงานทั้งหมดค่ะ
(ปล. หนูแนบโปรแกรมคร่าว ๆ มาให้อาจารย์ดูค่ะ คำถามหนูอาจจะวกไปวนมา แต่ให้อาจารย์ดูโปรแกรมประกอบไปด้วยค่ะ ถ้าเป็นไปได้อาจารย์ช่วยแก้โปรแกรมให้ด้วยนะคะ)
12 @R03710
ใครก็ได้รู้ช่วยบอกที
13 @R03732
นี่เป็นตัวอย่างของอ.BADMan และอ.สุภาพที่เคยให้ไว้
ผมเอาการเปลี่ยน ภาษาของอ.BADMan มารวมกับ Code อ.สุภาพที่ใช้ในการ จับนั่นจับนี่มารวมกันพอจะใช้ที่ทำงานได้ ลองดูนะครับเผื่อจะช่วยอะไรได้บ้าง ส่วนข้อ 1-2 ผมเปิดไม่ได้เพราะผมใช้ 97 หรือลองค้นดูคำว่า Who on line ส่วนเรื่องการเปิดเครื่องแล้วให้ Form Password เปิดขึ้นมานั้นไม่ทราบครับ แต่ถ้าเกิดเปิด File.mdb แล้วเปิดForm Login ขึ้นมานั้นก็เปิดงานขึ้นมาแล้วไปที่ Tool > Start up > ............. ต้องการซ่อนอะไรหรือเปิด Form Login ก็กำหนดที่นี่ได้เลยครับ

14 @R03733
นี่เป็นตัวอย่างของอ.BADMan และอ.สุภาพที่เคยให้ไว้
ผมเอาการเปลี่ยน ภาษาของอ.BADMan มารวมกับ Code อ.สุภาพที่ใช้ในการLogIn จับนั่นจับนี่มารวมกันพอจะใช้ที่ทำงานได้ ลองดูนะครับเผื่อจะช่วยอะไรได้บ้าง ส่วนข้อ 1-2 ผมเปิดไม่ได้เพราะผมใช้ 97 หรือลองค้นดูคำว่า Who on line ส่วนเรื่องการเปิดเครื่องแล้วให้ Form Password เปิดขึ้นมานั้นไม่ทราบครับ แต่ถ้าเกิดเปิด File.mdb แล้วเปิดForm Login ขึ้นมานั้นก็เปิดงานขึ้นมาแล้วไปที่ Tool > Start up > ............. ต้องการซ่อนอะไรหรือเปิด Form Login ก็กำหนดที่นี่ได้เลยครับ

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