Page 1 of 1

สอบถามการ รีเฟรชค่า ดรอบดาวน์ ครับ

Posted: Thu Feb 11, 2021 8:25 pm
by cartoonnet
คือผมทำ Drop down หลายชั้นที่เงื่อนไขเชื่อมโยงกัน
เวลาเราทำการเปลี่ยน ดรอบดาว อันแรก ดรอบดาวน์อันที่เหลือจะยังไม่เปลี่ยนทันทีจนกว่าเราจะไปคลิ๊กครับ
คือต้องการให้เปลียนเลยหรือเป็นช่องว่างก่อนก็ได้ครับ ป้องกันคลิ๊กผิดพลาด
ขอบคุณครับ

Re: สอบถามการ รีเฟรชค่า ดรอบดาวน์ ครับ

Posted: Thu Feb 11, 2021 8:31 pm
by puriwutpokin
การทำแบบนั้นต้องใช้ VBA มาช่วยครับ ลองเขียนมาก่อนหรือบันทึก Macro ดูครับติดตรงไหนมาถามกันต่อครับ

Re: สอบถามการ รีเฟรชค่า ดรอบดาวน์ ครับ

Posted: Thu Feb 11, 2021 8:51 pm
by cartoonnet
puriwutpokin wrote: Thu Feb 11, 2021 8:31 pm การทำแบบนั้นต้องใช้ VBA มาช่วยครับ ลองเขียนมาก่อนหรือบันทึก Macro ดูครับติดตรงไหนมาถามกันต่อครับ
ประมาณนี้หรือเปล่าครับ ลองเขียนดูแต่ก็ยัง งงๆครับ

Sub Test1234()
Dim data As String
Range("B1").Select
data = Range("B1").Value
If data = "data in B1" Then
ActiveCell.Value = "B1 data changed"
Else
MsgBox "Data is OK."
End If
End Sub

Re: สอบถามการ รีเฟรชค่า ดรอบดาวน์ ครับ

Posted: Thu Feb 11, 2021 9:20 pm
by cartoonnet
ผมเขียน ได้มาแบบนี้ครับ

Sub Test1234()
If Range("B1").Select Then
Range("B2:B9").Value = ""
End If
End Sub


คือถ้ามีการเปลี่ยน B1
ให้ลบข้อมูล B2 - b9
ผลคือมันลบครับแต่ลบครั้งเดียว พอเปลี่ยนอีกก็ไม่ลบแล้ว

Re: สอบถามการ รีเฟรชค่า ดรอบดาวน์ ครับ

Posted: Thu Feb 11, 2021 9:21 pm
by snasui
:D แนบไฟล์ตัวอย่างมาด้วยจะได้สะดวกกับการตอบของเพื่อนสมาชิก

กรณีเป็น Code กรุณาเขียนแนบมาในไฟล์ด้วยครับ

สำหรับการวาง Code ในกล่องความเห็นควรให้แสดงเป็น Code ดูวิธีการได้จากกฎการใช้บอร์ดข้อ 5 ด้านบนครับ :roll:

Re: สอบถามการ รีเฟรชค่า ดรอบดาวน์ ครับ

Posted: Thu Feb 11, 2021 9:32 pm
by cartoonnet
snasui wrote: Thu Feb 11, 2021 9:21 pm :D แนบไฟล์ตัวอย่างมาด้วยจะได้สะดวกกับการตอบของเพื่อนสมาชิก

กรณีเป็น Code กรุณาเขียนแนบมาในไฟล์ด้วยครับ

สำหรับการวาง Code ในกล่องความเห็นควรให้แสดงเป็น Code ดูวิธีการได้จากกฎการใช้บอร์ดข้อ 5 ด้านบนครับ :roll:
ขอบคุณมากครับ

Re: สอบถามการ รีเฟรชค่า ดรอบดาวน์ ครับ

Posted: Thu Feb 11, 2021 9:44 pm
by snasui
:D ไฟล์แนบไม่สอดคล้องกับประเด็นปัญหา กรุณาสร้างตัวอย่างมาใหม่ให้เป็นลักษณะของ Dropdown List แบบสัมพันธ์กัน

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

Re: สอบถามการ รีเฟรชค่า ดรอบดาวน์ ครับ

Posted: Thu Feb 11, 2021 9:46 pm
by cartoonnet
snasui wrote: Thu Feb 11, 2021 9:44 pm :D ไฟล์แนบไม่สอดคล้องกับประเด็นปัญหา กรุณาสร้างตัวอย่างมาใหม่ให้เป็นลักษณะของ Dropdown List แบบสัมพันธ์กัน

เป็นไปได้ว่าสามารถเขียนเป็น Condition Formatting เพื่อเติมสีทับ Dropdown ตัวย่อยเอาไว้ก่อนหากว่าตัวหลักที่เลือกก่อนหน้าไม่ใช่ตัวหลักของค่าปัจจุบันครับ
ไฟล์ต้นฉบับขนาดมันใหญ่ไปครับ เดียวผมหาทางลบก่อนนะครับ

Re: สอบถามการ รีเฟรชค่า ดรอบดาวน์ ครับ

Posted: Thu Feb 11, 2021 9:50 pm
by cartoonnet
snasui wrote: Thu Feb 11, 2021 9:44 pm :D ไฟล์แนบไม่สอดคล้องกับประเด็นปัญหา กรุณาสร้างตัวอย่างมาใหม่ให้เป็นลักษณะของ Dropdown List แบบสัมพันธ์กัน

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

Re: สอบถามการ รีเฟรชค่า ดรอบดาวน์ ครับ

Posted: Thu Feb 11, 2021 10:08 pm
by cartoonnet
คือผมน่าจะเขียนคำสั่งถูกแล้วครับแต่ มันต้องคอยกดปุ่ม Run เองตลอดครับ
Sub M221()
If Range("B1").Activate Then
Range("B2:B9").Value = ""
End If
End Sub

คือผมเขียนว่า ถ้า B1มีการใช้งาน ให้ลบ B2 - B9
มันลบครับแต่ผมต้องกดปุ่ม RUN เองมันไม่รันอัตโนมัติให้ตอนที่มีการใช้ B1ครับ
คือผมเรียกใช้งานไม่เป็นครับเพิ่งเคยเขียน VBA

Re: สอบถามการ รีเฟรชค่า ดรอบดาวน์ ครับ

Posted: Thu Feb 11, 2021 10:47 pm
by snasui
:D เขียนสูตรใน Conditional Formatting เป็นด้านล่างครับ

=ISNA(MATCH(B2,H2:H1000,0))

ใส่สีพื้นให้เป็นสีเดียวกับตัวอักษร ตามภาพด้านล่างครับ

Re: สอบถามการ รีเฟรชค่า ดรอบดาวน์ ครับ

Posted: Thu Feb 11, 2021 10:52 pm
by cartoonnet
snasui wrote: Thu Feb 11, 2021 10:47 pm :D เขียนสูตรใน Conditional Formatting เป็นด้านล่างครับ

=ISNA(MATCH(B2,H2:H1000,0))

ใส่สีพื้นให้เป็นสีเดียวกับตัวอักษร ตามภาพด้านล่างครับ
ทำได้แล้วครับขอบคุณมากครับ