33
ห้อง MS Access / : ซ่อนทั้งกลุ่ม โชว์ทั้งกลุ่ม
« เมื่อ: 19 ก.ค. 62 , 08:16:08 »
แบบที่ 1
ถ้าท่านกำหนด txtGroup1A0 1 2 3 4 5 6 .... / txtGroup1B 1 2 3 4 5 6 ...... / txtGroup2A 1 2 3 4 5 6 ... ไปแบบนี้ ใช้การกำหนดเงื่อนไขจากชื่อของตัว Control เอาก็ได้คับเช่น
แบบที่ 2
อีกวิธีอาจจะง่ายกว่าคือการกำหนดชื่อของกลุ่มที่ Tag ของกล่องข้อความแล้วกำหนดเงือนไขการซ่อนและแสดง
ผมสมมุติ textbox 6 ตัวชื่อกลุ่ม Group1

ถ้าท่านกำหนด txtGroup1A0 1 2 3 4 5 6 .... / txtGroup1B 1 2 3 4 5 6 ...... / txtGroup2A 1 2 3 4 5 6 ... ไปแบบนี้ ใช้การกำหนดเงื่อนไขจากชื่อของตัว Control เอาก็ได้คับเช่น
โค๊ด: [Select]
Private Sub Command1_Click() 'เลือก Event ที่ต้องการครับ
Dim ctl As Control
For Each ctl In Me
If ctl.ControlType = acTextBox Then
If Left$(ctl.Name, 10) = "txtGroup1A" Then 'Left 10 เพราะต้องการเช็คตัวอักษรทางซ้าย 10 ตัวซึ่งเป็นชื่อที่เหมือนกันของกลุ่ม
ctl.Visible = False 'หรือ ctl.Visible = true หรือจะสร้างเงื่อนไขให้กลุ่มอื่นๆด้วยก็ได้เช่นกัน
End If
End If
Next ctl
End Sub
แบบที่ 2
อีกวิธีอาจจะง่ายกว่าคือการกำหนดชื่อของกลุ่มที่ Tag ของกล่องข้อความแล้วกำหนดเงือนไขการซ่อนและแสดง
ผมสมมุติ textbox 6 ตัวชื่อกลุ่ม Group1
โค๊ด: [Select]
Private Sub Command1_Click()
Dim ctl As Control
For Each ctl In Me
If ctl.Tag = "Group1" Then
ctl.Visible = False
End If
Next ctl
End Sub
โพสต์นี้ได้รับคำขอบคุณจาก: kitisak