พบกับบทความเกี่ยวกับคอมพิวเตอร์และ programming ได้ที่ http://articles.modoeye.com
Visual Basic programming / VBA in MS Access
korakot_titla
korakot_titla
Thu 1 Mar 2007 12:56:06

รบกวนพี่ทีมงานหน่อยนะครับผมมีเรื่องจะปรึกษาคืออย่างนี้นะครับ

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

 Name

8.00-8.30 

 8.30-9.00

 9.00-9.30

 9.30-10.00

 korakot

 textbox1

textbox2 

textbox3 

textbox4 

ซึ่งในแต่ละเท็กบ๊อกจะแสงรายละเอียดแล้วก็หัวข้อการประชุมในแต่ละเวลาและเวลาผมจะกำหนดให้เป็นค่าคงที่เลย แล้วทำการเช็คเงื่อนไขเอาว่าเวลาช่วงนี้ควรจะอยู่ในเท็กบ๊อกอันไหน

*ปัญหาคือว่าสมมุติมีผู้เข้าประชุมหลายๆคนแล้วก็ต้องทำแสดงรายชื่อออกมาทั้งหมดมทำไม่ได้นะครับ คือถ้ามี 10 คนก็ให้แสดงรายชื่อแล้วก็เท็กบ๊อกออกมา 10 อันซึ่งตรงนี้ผมลองใช้ Messagebox ดูนะครับสามารถทำได้แต่ถ้าจะให้ลิสหรือแสดงเท็กบ๊อกออกมาทั้ง 10 อันตามจำนวนสมาชิกที่เข้าประชุมไม่ได้นะครับ ผมมีตัวอย่างโค้ดให้ด้วยนะครับ

Private Sub Form_Load()
Dim J, N As Integer
J = 0
N = 0
Set dbs = CurrentDb()
Set rst = dbs.OpenRecordset("Qur_Meeting")
N = rst.RecordCount
For J = 0 To 23
MsgBox rst![meeting_time] & J
'Forms![Frm_Meeting1].[txtTest ] = rst![meeting_time]
rst.MoveNext
Next J
End Sub

ที่ผมเน้นข้อความตรงนั้นคือเท็กบ๊อกที่ต้องการให้แสดงออกเท่าจำนวนรอบที่ใช้ loop for วนเอานะครับ

ไม่ทราบพอจะมีวิธีหรือป่าวครับหรือไม่รบกวนถ้ามีวิธีที่ดีกว่านี้ก็ได้นะครับ

ขอบคุณมากครับ

korakot_titla
korakot_titla
Mon 5 Mar 2007 15:22:03

รบกวนอีกหน่อยนะครับกรุณาช่วยผมหน่อยนะครับ คือตอนนี้ติดปัญหาอย่างนี้นะครับ

คือสมมุติมี textbox อยู่ 3 ตัวแล้วผมตั้งชื่อ textbox ชื่อดังนี้นะครับ txtName(1),txtName(2),txtName(3) ประมาณนี้นะครับแล้วผมก็เขียนโค้ดลงไปอย่างนี้นะครับ

               For I = 1 To 3
                        MsgBox rst![Name] & ".." & "I=" & I
                        Forms![Frm_Meeting].[txtName(I)] = rst![Name]
                        rst.MoveNext
                Next I

อย่างนี้เลยนะครับแต่ผมลองทดลองใช้ Messagebox ก็สามารถใช้งานได้นะครับก็จะวนลูปไป 3 รอบ แต่ถ้าผมจะให้ textbox เหล้านั้นแสดงค่าออกมาตามจวนลูปที่ผมได้กำหนดแล้วก็ในเท็กบ๊อกที่ผมได้สร้างไว้ทั้ง 3 ตัว ไม่ทราบว่าพอจะมีวิธีหรือป่าวครับ เพราะตอนนี้พอวนลูปแล้วจะ Error นะครับเพราะมันบอกว่าไม่รู้จัก textbox ทึ่ชื่อตามที่ผมได้อ้างไปนะครับแต่พอผมลงเช็คดูค่าของ I มันก็เปลี่ยนนะครับแต่ไม่รู้ทำไม่ถึงเกิด Error ได้ แต่ถ้าผมกำหนดชื่อ textbox ไปเลยมันก็จะแสดงค่าของ record สุดท้ายที่มีอยู่ในฐานข้อมูลนะครับ ผมรบกวนพี่ๆทีมงานช่วยผมหน่อยนะครับ คือผมติดมาหลายวันแล้วนะครับ

korakot_titla
korakot_titla
Mon 5 Mar 2007 16:11:18

รบกวนอีกหน่อยนะครับกรุณาช่วยผมหน่อยนะครับ คือตอนนี้ติดปัญหาอย่างนี้นะครับ

คือสมมุติมี textbox อยู่ 3 ตัวแล้วผมตั้งชื่อ textbox ชื่อดังนี้นะครับ txtName(1),txtName(2),txtName(3) ประมาณนี้นะครับแล้วผมก็เขียนโค้ดลงไปอย่างนี้นะครับ

               For I = 1 To 3
                        MsgBox rst![Name] & ".." & "I=" & I
                        Forms![Frm_Meeting].[txtName(I)] = rst![Name]
                        rst.MoveNext
                Next I

อย่างนี้เลยนะครับแต่ผมลองทดลองใช้ Messagebox ก็สามารถใช้งานได้นะครับก็จะวนลูปไป 3 รอบ แต่ถ้าผมจะให้ textbox เหล้านั้นแสดงค่าออกมาตามจวนลูปที่ผมได้กำหนดแล้วก็ในเท็กบ๊อกที่ผมได้สร้างไว้ทั้ง 3 ตัว ไม่ทราบว่าพอจะมีวิธีหรือป่าวครับ เพราะตอนนี้พอวนลูปแล้วจะ Error นะครับเพราะมันบอกว่าไม่รู้จัก textbox ทึ่ชื่อตามที่ผมได้อ้างไปนะครับแต่พอผมลงเช็คดูค่าของ I มันก็เปลี่ยนนะครับแต่ไม่รู้ทำไม่ถึงเกิด Error ได้ แต่ถ้าผมกำหนดชื่อ textbox ไปเลยมันก็จะแสดงค่าของ record สุดท้ายที่มีอยู่ในฐานข้อมูลนะครับ ผมรบกวนพี่ๆทีมงานช่วยผมหน่อยนะครับ คือผมติดมาหลายวันแล้วนะครับ

Administrator
Mon 5 Mar 2007 20:07:37
textBox ที่สร้างไว้เป็น array หรือไม่ครับ เท่าที่ดูโค๊ดนี้เป็นการอ้างถึง txtName ที่เป็น array นี่ครับ
korakot_titla
korakot_titla
Wed 7 Mar 2007 00:08:40

คือผมไม่รู้วิธีการสร้าง control array สำหรับ vba  ใน ms access นะครับ รบกวนพี่ช่วยแนะนำผมหน่อยนะครับ

ขอบคุณมากครับ

Reply
Name:
E-mail:
Home | Services | Forum | Classified | Directories | Support | Contact
ATOM feed RSS 0.9 feed RSS 1.0 feed RSS 2.0 feed
Copyright © 2005 - 2007 Modoeye.com, All Rights Reserved.
Disclaimer | Privacy policy | Term of Use | Term of Services
Valid XHTML Valid CSS! PHP: Hypertext Preprocessor MySQL database Apache Powered! FreeBSD Power to serve
Modoeye Sitemap Client login