กระทู้เก่าบอร์ด อ.Yeadram
2,554 11
URL.หัวข้อ /
URL
สอบถามวิธีใส่ข้อมูลก่อนจึงเปิดใช้ฟอร์มได้
สวัสดีครับท่านอาจารย์ทุกๆท่าน ผมมีเรื่องรบกวนสอบถามครับ คือ
ผมมีฟอร์มอยู่ 1 ฟอร์ม เป็นฟอร์มหลักที่มีฟอร์มย่อยอยู่ด้วยครับ รายละเอียดครับ
ฟอร์มที่ 1 เป็นฟอร์มหลักชื่อว่า "ChackIn01" และมีฟอร์มย่อยชื่อว่า "ChackIn02"
ในฟอร์ม ChackIn01 จะมี textbox ชื่อว่า "txtDoc"
มีปุ่ม "Add" 1 ปุ่มครับ
1. อยากให้ต้องคีย์ข้อมูลลงใน txtDoc ในฟอร์ม ChackIn01 ก่อน
ฟอร์ม ChackIn02 จึงจะสามารถคีย์ข้อมูลได้ครับ
2. อยากให้ฟอร์ม ChackIn02 เป็นสีเทารางๆก่อนครับและพอคีย์ข้อมูลลง
ใน txtDoc แล้ว ฟอร์ม ChackIn02 ก็จะเป็นสีชัดขึ้นมาพร้อมคีย์ได้ครับ
3. อยากให้เปิดฟอร์มใหม่หรือกดที่ปุ่ม Add ทุกครั้งฟอร์มก็จะกลับมาอยู่ในรูปแบบที่ต้องคีย์ข้อมูลลงใน txtDoc ก่อนทุกครั้งจึงจะสามารถคีย์ข้อมูลในฟอร์มย่อย
ChackIn02 ได้ครับ
พอจะมีวิธีที่สามารถทำได้ไหมครับ ผมต้องขอรบกวนท่านอาจารย์ทุกท่านช่วยชี้แนะด้วยนะครับ หรือผมต้องค้นหาคำว่าอะไรถึงจะสามารถรู้วิธีทำได้ครับ
ขอบคุณครับ
ผมมีฟอร์มอยู่ 1 ฟอร์ม เป็นฟอร์มหลักที่มีฟอร์มย่อยอยู่ด้วยครับ รายละเอียดครับ
ฟอร์มที่ 1 เป็นฟอร์มหลักชื่อว่า "ChackIn01" และมีฟอร์มย่อยชื่อว่า "ChackIn02"
ในฟอร์ม ChackIn01 จะมี textbox ชื่อว่า "txtDoc"
มีปุ่ม "Add" 1 ปุ่มครับ
1. อยากให้ต้องคีย์ข้อมูลลงใน txtDoc ในฟอร์ม ChackIn01 ก่อน
ฟอร์ม ChackIn02 จึงจะสามารถคีย์ข้อมูลได้ครับ
2. อยากให้ฟอร์ม ChackIn02 เป็นสีเทารางๆก่อนครับและพอคีย์ข้อมูลลง
ใน txtDoc แล้ว ฟอร์ม ChackIn02 ก็จะเป็นสีชัดขึ้นมาพร้อมคีย์ได้ครับ
3. อยากให้เปิดฟอร์มใหม่หรือกดที่ปุ่ม Add ทุกครั้งฟอร์มก็จะกลับมาอยู่ในรูปแบบที่ต้องคีย์ข้อมูลลงใน txtDoc ก่อนทุกครั้งจึงจะสามารถคีย์ข้อมูลในฟอร์มย่อย
ChackIn02 ได้ครับ
พอจะมีวิธีที่สามารถทำได้ไหมครับ ผมต้องขอรบกวนท่านอาจารย์ทุกท่านช่วยชี้แนะด้วยนะครับ หรือผมต้องค้นหาคำว่าอะไรถึงจะสามารถรู้วิธีทำได้ครับ
ขอบคุณครับ
11 Reply in this Topic. Dispaly 1 pages and you are on page number 1
1 @R08203
สีเทารางๆ แบบนี้นะครับ
2 @R08204
พอคีย์ข้อมูลแล้วก็ให้ชัดอย่างนี้น่ะครับ
3 @R08205
เออผมอ่านไม่ค่อยละเอียดลองตอบดูก่อนละก่อน...
ผมลองบอกหลักๆให้ลองไปทำดูละกัน
ใน textbox ที่คุณต้องการให้ไปใส่ code ที่ after update
Private Sub txtDoc_AfterUpdate()
If len(txtDoc) then
'ถ้า key แล้วให้ทำอะไร
YourSubform.enable = True
else
'ถ้าไม่ได้ key ห้ทำอะไร
YourSubform.enable = False
end if
End Sub
YourSubform ก็คือชื่อ sub form ของคุณอะนะครับ
ผมลองบอกหลักๆให้ลองไปทำดูละกัน
ใน textbox ที่คุณต้องการให้ไปใส่ code ที่ after update
Private Sub txtDoc_AfterUpdate()
If len(txtDoc) then
'ถ้า key แล้วให้ทำอะไร
YourSubform.enable = True
else
'ถ้าไม่ได้ key ห้ทำอะไร
YourSubform.enable = False
end if
End Sub
YourSubform ก็คือชื่อ sub form ของคุณอะนะครับ
4 @R08210
ขอบคุณคุณแดนมากครับที่แนะนำ คือผมอยากให้ถ้าคีย์แล้ว Subform สามารถคีย์ข้อมูลได้ แต่ถ้าไม่มีข้อมูลผมอยากให้ Subform คีย์ข้อมูลไม่ได้ครับ ไม่ทราบว่าต้องเขียนเพิ่มเติมอย่างไรครับ รบกวนด้วยครับ
ขอบคุณครับ
ขอบคุณครับ
5 @R08219
เอ้าก็ที่แนะนำไปไงครับ...
6 @R08220
ขอบคุณครับคุณแดน ผมลองก๊อปโค๊ดไปลงแล้วครับ แต่ไม่ทราบว่าผิดตรงไหนมันไม่ทำงานครับ ยังใส่ข้อมูลได้อยู่ ผมผิดตรงไหนรบกวนด้วยนะครับ
ขอบคุณครับ
ขอบคุณครับ
7 @R08221
แล้ว code ที่คุณเขียนไปไม่เอามาให้ดูแล้วจะแก้อย่างไรหละครับ
โค๊ดที่ให้ไปเป็นแนวทางนะครับ ต้องทำความเข้าใจแล้วเอาไปปรับใช้นะ
โค๊ดที่ให้ไปเป็นแนวทางนะครับ ต้องทำความเข้าใจแล้วเอาไปปรับใช้นะ
8 @R08222
Private Sub txtDoc_AfterUpdate()
If len(txtDoc) then
'ถ้า key แล้วให้ทำอะไร
ChackIn02.enable = True
else
'ถ้าไม่ได้ key ห้ทำอะไร
ChackIn02.enable = False
end if
End Sub
ผมเขียน Code ตามนี้ครับ ไม่ทราบว่าผมเขียนโค๊ดผิดจุดไหนหรือเปล่าครับ
รบกวนด้วยครับ
If len(txtDoc) then
'ถ้า key แล้วให้ทำอะไร
ChackIn02.enable = True
else
'ถ้าไม่ได้ key ห้ทำอะไร
ChackIn02.enable = False
end if
End Sub
ผมเขียน Code ตามนี้ครับ ไม่ทราบว่าผมเขียนโค๊ดผิดจุดไหนหรือเปล่าครับ
รบกวนด้วยครับ
9 @R08223
ผิดครับ...
ตกตัว D หลัง enable ครับ
ต้องเป็น enabled นะครับ ผิดไปตั้งแต่ที่ผมให้นั่นแหละ
ฝากไปสังเกตุนิดนึงถ้ารักที่จะใช้งาน Ms Access
หลังจากที่เขียน code เสร็จ หรือ copy code ไปใช้
พวกที่เป็น property หรือ คำสั่งต่างๆ ถ้าเราเขียนถูกมันจะต้องขึ้นต้นด้วยตัวใหญ่นะครับ เช่น .enabled เนี่ยมันจะต้องกลายเป็น .Enabled นั้นแสดงว่าเราเขียนได้ถูกต้องแล้ว
ลองเช็คดูนะครับ
ตกตัว D หลัง enable ครับ
ต้องเป็น enabled นะครับ ผิดไปตั้งแต่ที่ผมให้นั่นแหละ
ฝากไปสังเกตุนิดนึงถ้ารักที่จะใช้งาน Ms Access
หลังจากที่เขียน code เสร็จ หรือ copy code ไปใช้
พวกที่เป็น property หรือ คำสั่งต่างๆ ถ้าเราเขียนถูกมันจะต้องขึ้นต้นด้วยตัวใหญ่นะครับ เช่น .enabled เนี่ยมันจะต้องกลายเป็น .Enabled นั้นแสดงว่าเราเขียนได้ถูกต้องแล้ว
ลองเช็คดูนะครับ
10 @R08225
ขอบคุณ คุณแดนมากเลยครับ ผมจะจำคำแนะนำของคุณแดนไปปรับใช้ครับ
ขอบคุณมากๆเลยครับ
ขอบคุณมากๆเลยครับ
11 @R08228
ผมพอทำได้แล้วครับ โดยการไปที่ text Box ในส่วนของ Subform แล้วไปที่
เปิดการใช้งาน เลือกที่ ปิดการใช้งานของ textBox นั้นๆ แล้วสร้างปุ่มขึ้นมาเพื่อกดให้เปิดการใช้งานได้ ทีนี้ผมติดอยูตรงที่ว่าจะเขียนโค๊ดอย่างไรให้ไปหาที่ตัว textBox ของ Subform เพื่อเปิดการทำงาน โค๊ดที่ผมเขียนคือ
Me.ChackIn02.Enabled = True
แต่ถ้าผมต้องการไปที่ textBox ของ ChackIn02 (ซึ่งเป็น Subform) ที่ชื่อว่า
txtCode ผมต้องเขียนโค๊ดเพิ่มเข้าไปอย่างไรครับ รบกวนด้วยนะครับ ขอบคุณครับ
เปิดการใช้งาน เลือกที่ ปิดการใช้งานของ textBox นั้นๆ แล้วสร้างปุ่มขึ้นมาเพื่อกดให้เปิดการใช้งานได้ ทีนี้ผมติดอยูตรงที่ว่าจะเขียนโค๊ดอย่างไรให้ไปหาที่ตัว textBox ของ Subform เพื่อเปิดการทำงาน โค๊ดที่ผมเขียนคือ
Me.ChackIn02.Enabled = True
แต่ถ้าผมต้องการไปที่ textBox ของ ChackIn02 (ซึ่งเป็น Subform) ที่ชื่อว่า
txtCode ผมต้องเขียนโค๊ดเพิ่มเข้าไปอย่างไรครับ รบกวนด้วยนะครับ ขอบคุณครับ
Time: 0.3203s