Page 1 of 1
รบกวนสอบถามเรื่อง แสคงข้อความ ค่ะ
Posted: Thu Dec 09, 2010 11:35 am
by Flamingo
อาจารย์คะ หนูต้องการที่จะโชว์rangeของสี หนูตั้งชื่อในname boxว่า Color อยู่ที่ data color ต้องการจะแสดงที่ตำแหน่ง N50 ของ sheet1 (ถ้าเลือก C1) ค่ะ
รบกวนถามอาจารย์ว่า หนูต้องทำยังไงคะ
Re: รบกวนสอบถามเรื่อง แสคงข้อความ ค่ะ
Posted: Thu Dec 09, 2010 11:45 am
by Flamingo
ตอนนี้ หนูลองใช้ if ดูค่ะ แต่ก็ไม่ได้
=IF(Selection!B15=1,'data color'!$A$1:$B$5,IF(Selection!B15=2,"B",IF(Selection!B15=3,"C","D")))
Re: รบกวนสอบถามเรื่อง แสคงข้อความ ค่ะ
Posted: Thu Dec 09, 2010 11:48 am
by snasui
ไม่เข้าใจว่าให้โชว์แบบไหนครับ โชว์เป็นสีหรือโชว์เป็นค่าตัวเลข ทำตัวอย่างคำตอบที่ถูกต้องให้ดูด้วยก็จะดีครับ
Re: รบกวนสอบถามเรื่อง แสคงข้อความ ค่ะ
Posted: Thu Dec 09, 2010 12:02 pm
by Flamingo
ถ้าเลือก C1 ให้แสดง Range ของสี และค่า ออกมาตามรูปภาพประกอบค่ะ
Re: รบกวนสอบถามเรื่อง แสคงข้อความ ค่ะ
Posted: Thu Dec 09, 2010 12:04 pm
by Flamingo
รูปตัวอย่างค่ะ
Re: รบกวนสอบถามเรื่อง แสคงข้อความ ค่ะ
Posted: Thu Dec 09, 2010 12:22 pm
by snasui
ลองตามนี้ครับ
ที่ Module1 Copy Code ตามด้านล่างไปวาง จากนั้น Assigned Macro ให้กับ Combo box ใน Sheet1 ลองคลิกเลือกค่าเป็น C1 แล้วสังเกตดูผล
Code: Select all
Sub RangeColor()
Dim rs As Range
Dim rt As Range
Set rs = Sheets("Data Color").Range("A1:B5")
Set rt = Worksheets("Sheet1").Range("N50")
If Sheets("Selection").Range("B15") = 1 Then
rs.Copy rt
Else
rt.Resize(5, 2).Clear
End If
End Sub
Re: รบกวนสอบถามเรื่อง แสคงข้อความ ค่ะ
Posted: Thu Dec 09, 2010 12:37 pm
by Flamingo
ทำไม พอเรากดอันอื่นแล้วมันไม่เคลียร์ค่าให้หล่ะคะ
เช่้น พอเลือก C2 แล้วมันยังแสดงอยู่
แล้วถ้าเราเลือก C2 จะให้มันแสดงสีอื่น ต้องกำหนดตรงไหนเหรอคะ หรือว่าเราจะต้อง Set rs = Sheets("Data Color").Range("A1:B5")
Set rt = Worksheets("Sheet1").Range("N50") set ค่าตรงนี้ใหม่หมด ทุกครั้งที่เราจะเปลี่ยนสี
หนูได้แนบไฟล์มาด้วยนะคะ
Re: รบกวนสอบถามเรื่อง แสคงข้อความ ค่ะ
Posted: Thu Dec 09, 2010 12:56 pm
by snasui
ค่อย ๆ ถามตอบไปนะครับ ที่ผมบอกว่า
Assigned Macro ให้กับ Combo box ใน Sheet1 นั้นยังไม่ได้ทำครับ
มันก็เลยไม่แสดงผลตามต้องการ การจะใช้ VBA Code ได้ ควรทราบว่าการ Assign Macro ให้กับ Object ทำอย่างไรก่อนครับ
วิธีการคือ
1. คลิกขวาที่ Object (กล่อง Dropdown อันแรก)
2. เลือก Assign Macro
3. เลือก RangeColor
เอาเท่านี้ก่อน หากมีเงื่อนไขอื่นใดก็ถามมาได้เรื่อย ๆ ครับ แต่เงื่อนไขลักษณะเดียวกัน ควรแจกแจงให้ครบในคราวนั้น ๆ การถามตอบจะได้กระชับครับ
Re: รบกวนสอบถามเรื่อง แสคงข้อความ ค่ะ
Posted: Thu Dec 09, 2010 1:10 pm
by Flamingo
ได้แล้วค่ะ พอมันไม่ได้ หนูเลยสร้างปุ่มขึ้นมา แล้วก้อ Assigned Macro ให้กับปุ่มค่ะ ตอนนี้ได้แล้ว
เด๊่ยวหนูลองapply ต่อไปเรื่อยๆดู ขอบคุณอาจารย์มากๆนะคะ