
มิน่าๆ
ขอบคุณมากครับ
code ข้างต้นยังไม่ทราบว่าใช้ได้รึป่าว เพียงแต่คิดว่าน่าจะแบบนั้น
ไม่กล้า...เลยมาถามอาจารย์
มีอะไรพึ่งจะนึกออก ว่าจะถามอาจารย์หลายครั้งแล้วครับ
เรื่อง Listbox ครับ
1.เราสามารถกำหนดให้ Listbox มีเส้นตารางตามจำนวนคอลัมม์ และ จำนวน list ไหมครับ
2.เมื่อเราเลือกรายการใน Listbox ซึ่งมีคำสั่ง
Private Sub ListBox1_Click() 'แสดงผลข้อมูลลูกค้าจาก Range ที่กำหนด ซึ่งบางRange อาจเป็นค่าว่าง ผู้ใช้ต้องเติมข้อมูลผ่าน Textbox เพื่อ update ข้อมูลที่ไม่มี
On Error Resume Next
TextBox1.Value = Sheet15.Range("A3").Value
TextBox2.Value = Sheet15.Range("B3").Value
TextBox3.Value = Sheet15.Range("C3").Value
TextBox4.Value = Sheet15.Range("E3").Value
TextBox207.Value = Sheet15.Range("R3").Value
TextBox5.Value = TextBox207.Value
TextBox8.Value = Sheet15.Range("AC7").Text
TextBox9.Value = Sheet15.Range("AC9").Value
TextBox10.Value = Sheet15.Range("AC10").Value
TextBox11.Value = Sheet15.Range("AC11").Value
TextBox12.Value = Sheet15.Range("AC12").Value
TextBox13.Value = Sheet15.Range("AC13").Value
TextBox14.Value = Sheet15.Range("C30").Value
TextBox15.Value = Sheet15.Range("D30").Value
TextBox17.Value = Sheet15.Range("T3").Value (สมมติให้ range นี้เป็น "" คือไม่มีข้อมูล
TextBox16.Value = Sheet15.Range("B30").Value
TextBox18.Value = Sheet15.Range("S3").Value
TextBox19.Value = Sheet15.Range("F3").Value
TextBox20.Value = Sheet15.Range("D3").Value
TextBox21.Value = Sheet15.Range("H3").Value
TextBox22.Value = Sheet15.Range("G14").Value
ComboBox1.Value = Sheet15.Range("K3").Value
ListBox1.Clear 'เดิมไม่มีคำสั่งนี้ และเคยเขียน ListBox1.ClearSelect แต่ Debug
End Sub
ปัญหาที่เกิดคือ พอเราคีย์ข้อมูลใน Textbox ที่ว่าง ซึ่งใน Textbox ซึ่งมีคำสั่ง
Private Sub TextBox17_Change()
Sheet15.Range("T4").value = TextBox17.Value
End Sub
Textbox ไม่ยอมแสดงผลที่คีย์ มันกลายเป็นค่าที่ว่าง
คล้ายๆกับว่าคำสั่งของ Listbox ยังคงทำงานอยู่ ทำให้ TextBox มีค่าตามrange ที่ว่าง ตามคำสั่งของ listBox
หลังจากเลือกรายการใน ListBox เราจะเขียนคำสั่งใดครับให้ ListBox คืนค่าเหมือนก่อนที่จะเลือก(ไม่เป็นแถบสีฟ้า)
ListBox1.Clear

ก่อน End sub
ขอบคุณครับ