snasui.com ยินดีต้อนรับ
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
คำแสดงเจตนา
ขอผลแห่งการให้ความรู้นี้ จงกลับไปยังผู้ที่เป็นเจ้าของเดิม แม้ข้าพเจ้าจะไม่รู้จักท่านก็ตาม ขอให้แสงแห่งปัญญาที่ท่านเคยจุดไว้ ได้กลับไปเติมเต็มชีวิตของท่านอีกครั้ง และขอให้เจตนาของข้าพเจ้าเป็นการคืนความดีอย่างสงบ
ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
Forum rules
ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
Tanasan
Member
Posts: 46 Joined: Mon May 04, 2015 10:53 am
#1
Post
by Tanasan » Wed Jun 01, 2016 11:39 am
คือผมต้องการทำ ให้ Sheet1 copy ไปยัง Sheet2 แบบ Realtime
เงื่อนไขคือ 1. เมื่อข้อมูลใน Sheet1 มีการเปลี่ยนแปลง Sheet2 ที่ทำการ Copy ไว้ต้องเปลี่ยนแปลงด้วย
ผมได้เขียน Code ออกมาแล้ว แต่ปรากฏว่า Sheet1 มีการเปลี่ยนแปลงข้อมุล แต่ Sheet2 ไม่มีการเปลี่ยนตาม
ต้องทำการ Run macro ทุกครั้งเลยครับ
รบกวนช่วยดู Code ให้ผมทีครับ ว่าผมเขียนผิดตรงไหนหรือป่าวครับ
Book1.xlsm
You do not have the required permissions to view the files attached to this post.
PichaiTC
Member
Posts: 19 Joined: Wed Apr 27, 2016 12:55 pm
#2
Post
by PichaiTC » Wed Jun 01, 2016 1:44 pm
ต้องวาง code ใน Sub Worksheet_Change() นะครับ จึงจะทำงานได้ทันที
Tanasan
Member
Posts: 46 Joined: Mon May 04, 2015 10:53 am
#3
Post
by Tanasan » Wed Jun 01, 2016 2:39 pm
โพสผมอาจจะ พบ งง ไปหน่อย คือ
ผมจะต้องใช้เงื่อนไขในการ copy cell อีกขั้นครับ ผมจึงต้องเขียนโค๊ดขึ้นมา เพื่อนำไปใส่ใน ฟั่งชั่น IF
Tanasan
Member
Posts: 46 Joined: Mon May 04, 2015 10:53 am
#4
Post
by Tanasan » Wed Jun 01, 2016 2:40 pm
PichaiTC wrote: ต้องวาง code ใน Sub Worksheet_Change() นะครับ จึงจะทำงานได้ทันที
ผมลองวางแล้วครับ
แต่มันจะมีผล ตอนเปิด excel ขึ้นมาใหม่ครับ
bank26
Member
Posts: 1 Joined: Wed Jun 01, 2016 2:33 pm
#5
Post
by bank26 » Wed Jun 01, 2016 2:43 pm
ผมมีปัญหาในการจัดลำดับคะแนน สมมุติ มีนักเรียนในห้อง 10 คน มีคน
สอบได้10 คะแนน 3 คน
สอบได้ 9 คะแนน 4 คน
สอบได้ 8 คะแนน 3 คน
ผมลองใช้สูตร rank แล้ว ผลปรากฎว่า
คนที่สอบได้ 10 คะแนน ได้ลำดับที่ 1
คนที่สอบได้ 9 คะแนน ได้ลำดับที่ 4 (ระบบคำนวน 10 คะแนน 3 คน + 1 = 4)
คนที่สอบได้ 8 คะแนน ได้ลำดับที่ 8 (ระบบคำนวน 10 คะแนน 3 คน 9 คะแนน 4 คน +1 = 8)
ซึีงที่ต้องการอยากได้คือ
คนที่สอบได้ 10 คะแนน ได้ลำดับที่ 1
คนที่สอบได้ 9 คะแนน ได้ลำดับที่ 2
คนที่สอบได้ 8 คะนนได้ลำดับที่ 3
ไม่ทราบว่าต้องเขียนสูตรอย่างไรครับ
Tanasan
Member
Posts: 46 Joined: Mon May 04, 2015 10:53 am
#6
Post
by Tanasan » Wed Jun 01, 2016 2:49 pm
ิbank26 wrote: ผมมีปัญหาในการจัดลำดับคะแนน สมมุติ มีนักเรียนในห้อง 10 คน มีคน
สอบได้10 คะแนน 3 คน
สอบได้ 9 คะแนน 4 คน
สอบได้ 8 คะแนน 3 คน
ผมลองใช้สูตร rank แล้ว ผลปรากฎว่า
คนที่สอบได้ 10 คะแนน ได้ลำดับที่ 1
คนที่สอบได้ 9 คะแนน ได้ลำดับที่ 4 (ระบบคำนวน 10 คะแนน 3 คน + 1 = 4)
คนที่สอบได้ 8 คะแนน ได้ลำดับที่ 8 (ระบบคำนวน 10 คะแนน 3 คน 9 คะแนน 4 คน +1 = 8)
ซึีงที่ต้องการอยากได้คือ
คนที่สอบได้ 10 คะแนน ได้ลำดับที่ 1
คนที่สอบได้ 9 คะแนน ได้ลำดับที่ 2
คนที่สอบได้ 8 คะนนได้ลำดับที่ 3
ไม่ทราบว่าต้องเขียนสูตรอย่างไรครับ
ผมว่า ผิดกระทู้นะครับ อ่านกฏ ก่อนนะ
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#7
Post
by snasui » Wed Jun 01, 2016 6:45 pm
Tanasan wrote: โพสผมอาจจะ พบ งง ไปหน่อย คือ
ผมจะต้องใช้เงื่อนไขในการ copy cell อีกขั้นครับ ผมจึงต้องเขียนโค๊ดขึ้นมา เพื่อนำไปใส่ใน ฟั่งชั่น IF
นำ Code ไปวางใน Event Change ครับ
ดูภาพประกอบด้านล่างครับ
You do not have the required permissions to view the files attached to this post.
Tanasan
Member
Posts: 46 Joined: Mon May 04, 2015 10:53 am
#8
Post
by Tanasan » Thu Jun 02, 2016 10:33 am
snasui wrote: Tanasan wrote: โพสผมอาจจะ พบ งง ไปหน่อย คือ
ผมจะต้องใช้เงื่อนไขในการ copy cell อีกขั้นครับ ผมจึงต้องเขียนโค๊ดขึ้นมา เพื่อนำไปใส่ใน ฟั่งชั่น IF
นำ Code ไปวางใน Event Change ครับ
ดูภาพประกอบด้านล่างครับ
ขอบคุณมากครับอาจารย์
ตอนนี้เป็นแบบ realtime เรียบร้อยแล้วครับ
ผมยังต้องศึกษาเกี่ยวกับ function Excel อีกเยอะเลยครับ
Tanasan
Member
Posts: 46 Joined: Mon May 04, 2015 10:53 am
#9
Post
by Tanasan » Mon Jun 06, 2016 2:33 pm
snasui wrote: Tanasan wrote: โพสผมอาจจะ พบ งง ไปหน่อย คือ
ผมจะต้องใช้เงื่อนไขในการ copy cell อีกขั้นครับ ผมจึงต้องเขียนโค๊ดขึ้นมา เพื่อนำไปใส่ใน ฟั่งชั่น IF
นำ Code ไปวางใน Event Change ครับ
ดูภาพประกอบด้านล่างครับ
เนื่องจากครั้งที่แล้วผมได้ Code Copy แบบ Realtime แล้ว
แต่ทำไม เวลาผมใส่คำสั่ง เงื่อนไขลงไปใหม่ คือ IF ปรากฏ ว่าคำสั่งไม่รันให้ครับ
เนื่องจากผมอ้างอิง value จาก ComboBox
Code: Select all
Private Sub Worksheet_Change(ByVal Target As Range)
If Sheet3.ComboBox4.Value = "1" Then
Worksheets("Monthly").Range("D9:D16").Value = Worksheets("record process").Range("P9:P16").Value
Worksheets("Monthly").Range("D17:D38").Value = Worksheets("record process").Range("P19:P40").Value
Worksheets("Monthly").Range("E9:E16").Value = Worksheets("record process").Range("AC9:AC16").Value
Worksheets("Monthly").Range("E17:E38").Value = Worksheets("record process").Range("AC19:AC40").Value
If Sheet3.ComboBox6.Value = "2" Then
Worksheets("Monthly").Range("G9:G6").Value = Worksheets("record process").Range("P9:P16").Value
Worksheets("Monthly").Range("G17:G38").Value = Worksheets("record process").Range("P19:P40").Value
Worksheets("Monthly").Range("H9:H16").Value = Worksheets("record process").Range("AC9:AC16").Value
Worksheets("Monthly").Range("H17:H38").Value = Worksheets("record process").Range("AC19:AC40").Value
If Sheet3.ComboBox6.Value = "3" Then
Worksheets("Monthly").Range("J9:J6").Value = Worksheets("record process").Range("P9:P16").Value
Worksheets("Monthly").Range("J17:J38").Value = Worksheets("record process").Range("P19:P40").Value
Worksheets("Monthly").Range("K9:K16").Value = Worksheets("record process").Range("AC9:AC16").Value
Worksheets("Monthly").Range("K17:K38").Value = Worksheets("record process").Range("AC19:AC40").Value
End If
End Sub
Tanasan
Member
Posts: 46 Joined: Mon May 04, 2015 10:53 am
#10
Post
by Tanasan » Mon Jun 06, 2016 3:01 pm
เนื่องจากครั้งที่แล้วผมได้ Code Copy แบบ Realtime แล้ว
แต่ทำไม เวลาผมใส่คำสั่ง เงื่อนไขลงไปใหม่ คือ IF ปรากฏ ว่าคำสั่งไม่รันให้ครับ
เนื่องจากผมอ้างอิง value จาก ComboBox แต่โค๊ดก็ยังไม่ทำงานครับ
รบกวนช่วยดูให้หน่อยครับ ว่าผมตกหล่นไปตรงไหนบ้าง
Code: Select all
Private Sub Worksheet_Change(ByVal Target As Range)
If Sheet3.ComboBox4.Value = "1" Then
Worksheets("Monthly").Range("D9:D16").Value = Worksheets("record process").Range("P9:P16").Value
Worksheets("Monthly").Range("D17:D38").Value = Worksheets("record process").Range("P19:P40").Value
Worksheets("Monthly").Range("E9:E16").Value = Worksheets("record process").Range("AC9:AC16").Value
Worksheets("Monthly").Range("E17:E38").Value = Worksheets("record process").Range("AC19:AC40").Value
If Sheet3.ComboBox6.Value = "2" Then
Worksheets("Monthly").Range("G9:G6").Value = Worksheets("record process").Range("P9:P16").Value
Worksheets("Monthly").Range("G17:G38").Value = Worksheets("record process").Range("P19:P40").Value
Worksheets("Monthly").Range("H9:H16").Value = Worksheets("record process").Range("AC9:AC16").Value
Worksheets("Monthly").Range("H17:H38").Value = Worksheets("record process").Range("AC19:AC40").Value
If Sheet3.ComboBox6.Value = "3" Then
Worksheets("Monthly").Range("J9:J6").Value = Worksheets("record process").Range("P9:P16").Value
Worksheets("Monthly").Range("J17:J38").Value = Worksheets("record process").Range("P19:P40").Value
Worksheets("Monthly").Range("K9:K16").Value = Worksheets("record process").Range("AC9:AC16").Value
Worksheets("Monthly").Range("K17:K38").Value = Worksheets("record process").Range("AC19:AC40").Value
End If
End Sub
เนื่องจากไฟล์ Excel มีขนาดเกิน 300KB จึงต้องบีบอัดไฟล์มาให้ครับ
Copy of DATA ANDONG BOARD CL3 REV3 - Copy.rar
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#11
Post
by snasui » Mon Jun 06, 2016 5:23 pm
ทำการ Clear เซลล์ AF31 ไม่ให้คำนวณเป็นวงกลม (สังเกตบรรทัด Status Bar ด้านซ้ายล่างจอ)
จากนั้นปรับ Code เป็นด้านล่างครับ
Code: Select all
Private Sub Worksheet_Change(ByVal Target As Range)
If Sheet3.ComboBox6.Value = "1" Then
Worksheets("Monthly").Range("D9:D16").Value = Worksheets("record process").Range("P9:P16").Value
Worksheets("Monthly").Range("D17:D38").Value = Worksheets("record process").Range("P19:P40").Value
Worksheets("Monthly").Range("E9:E16").Value = Worksheets("record process").Range("AC9:AC16").Value
Worksheets("Monthly").Range("E17:E38").Value = Worksheets("record process").Range("AC19:AC40").Value
ElseIf Sheet3.ComboBox6.Value = "2" Then
Worksheets("Monthly").Range("G9:G6").Value = Worksheets("record process").Range("P9:P16").Value
Worksheets("Monthly").Range("G17:G38").Value = Worksheets("record process").Range("P19:P40").Value
Worksheets("Monthly").Range("H9:H16").Value = Worksheets("record process").Range("AC9:AC16").Value
Worksheets("Monthly").Range("H17:H38").Value = Worksheets("record process").Range("AC19:AC40").Value
ElseIf Sheet3.ComboBox6.Value = "3" Then
Worksheets("Monthly").Range("J9:J6").Value = Worksheets("record process").Range("P9:P16").Value
Worksheets("Monthly").Range("J17:J38").Value = Worksheets("record process").Range("P19:P40").Value
Worksheets("Monthly").Range("K9:K16").Value = Worksheets("record process").Range("AC9:AC16").Value
Worksheets("Monthly").Range("K17:K38").Value = Worksheets("record process").Range("AC19:AC40").Value
End If
End Sub
Tanasan
Member
Posts: 46 Joined: Mon May 04, 2015 10:53 am
#12
Post
by Tanasan » Mon Jun 06, 2016 5:59 pm
snasui wrote: ทำการ Clear เซลล์ AF31 ไม่ให้คำนวณเป็นวงกลม (สังเกตบรรทัด Status Bar ด้านซ้ายล่างจอ)
จากนั้นปรับ Code เป็นด้านล่างครับ
Code: Select all
Private Sub Worksheet_Change(ByVal Target As Range)
If Sheet3.ComboBox6.Value = "1" Then
Worksheets("Monthly").Range("D9:D16").Value = Worksheets("record process").Range("P9:P16").Value
Worksheets("Monthly").Range("D17:D38").Value = Worksheets("record process").Range("P19:P40").Value
Worksheets("Monthly").Range("E9:E16").Value = Worksheets("record process").Range("AC9:AC16").Value
Worksheets("Monthly").Range("E17:E38").Value = Worksheets("record process").Range("AC19:AC40").Value
ElseIf Sheet3.ComboBox6.Value = "2" Then
Worksheets("Monthly").Range("G9:G6").Value = Worksheets("record process").Range("P9:P16").Value
Worksheets("Monthly").Range("G17:G38").Value = Worksheets("record process").Range("P19:P40").Value
Worksheets("Monthly").Range("H9:H16").Value = Worksheets("record process").Range("AC9:AC16").Value
Worksheets("Monthly").Range("H17:H38").Value = Worksheets("record process").Range("AC19:AC40").Value
ElseIf Sheet3.ComboBox6.Value = "3" Then
Worksheets("Monthly").Range("J9:J6").Value = Worksheets("record process").Range("P9:P16").Value
Worksheets("Monthly").Range("J17:J38").Value = Worksheets("record process").Range("P19:P40").Value
Worksheets("Monthly").Range("K9:K16").Value = Worksheets("record process").Range("AC9:AC16").Value
Worksheets("Monthly").Range("K17:K38").Value = Worksheets("record process").Range("AC19:AC40").Value
End If
End Sub
เห็นแล้วครับ ขอบคุณมากครับ
ผมลองทำการทดสอบด้วยการลบออก คำสั่ง copy ถึงจะทำงานครับ
แต่ต้องลบทุกครั้งที่สั่งให้ copy
ขั้นตอนแรกผมทำการ Delete Cell "AF" ออกทั้งหมด ก็ยังไม่หายต้องมาทำการลบอีกด้วยการกด
ผมจึงน้ำ โค๊ด
ไปวางใน Loop IF ทดลองแล้วก็ไม่ได้
ไปวางใน Openworkbook ก็ไม่ได้ ผมต้องไปวางตรงไหนหรอครับ เพื่อจะให้คำสั่ง ตรงตามเงื่อนไข แล้วออกมาตามเงื่อนไข if
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#13
Post
by snasui » Mon Jun 06, 2016 6:21 pm
ไม่เข้าใจครับ
หากลบการคำนวณเป็นวงกลมออกแล้ว Code ควรจะทำงานได้ หากยังไม่ได้ให้แนบไฟล์ล่าสุดมา จะได้ช่วยตรวจสอบได้ ต้องทำเช่นนี้ทุกครั้งที่ติดปัญหาอย่าโพสต์มาเฉพาะ Code ครับ
Tanasan
Member
Posts: 46 Joined: Mon May 04, 2015 10:53 am
#14
Post
by Tanasan » Tue Jun 07, 2016 8:06 am
snasui wrote: ไม่เข้าใจครับ
หากลบการคำนวณเป็นวงกลมออกแล้ว Code ควรจะทำงานได้ หากยังไม่ได้ให้แนบไฟล์ล่าสุดมา จะได้ช่วยตรวจสอบได้ ต้องทำเช่นนี้ทุกครั้งที่ติดปัญหาอย่าโพสต์มาเฉพาะ Code ครับ
เมื่อผมเลือกวันที่ใน ComboBox เสร็จแล้ว คำสั่งCopy จะไม่ทำงานครับ
ผมลองทำการทดสอบด้วยการลบออกที่ Cell AE7:AE40 และ AF7:AF40 คำสั่ง copy ถึงจะทำงานครับ
แต่ต้องลบทุกครั้งที่เลือกวันที่ ใน ComboBox
ผมจึงทำการเขียน Code
(ตามไฟล์แนบ)
เพื่อให้ Clear Cell AE7:AE40 และ AF7:AF40 ทั้งหมด แต่ก็ยัง Clear ออกไม่ได้ ต้องกลับมาลบเองคำสั่งถึงจะทำงานครับ
You do not have the required permissions to view the files attached to this post.
snasui
Site Admin
Posts: 31175 Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:
#15
Post
by snasui » Tue Jun 07, 2016 6:53 pm
โพสต์ไว้แล้วแค่รอคำตอบครับ
ผู้ตอบจะตอบเองเมื่อทราบวิธี หรือเมื่อผมมีเวลาและไม่ติดเทศกาลที่ต้องหยุดยาวก็จะเข้ามาตอบให้ทุกคำถาม สังเกตได้ว่าในฟอรัมนี้ไม่มีกระทู้ร้างแม้แต่กระทู้เดียวครับ
ห้ามโพสต์ซ้ำ ๆ โดยไม่จำเป็น ยกเว้นมีการปรับปรุงแก้ไขหรือเปลี่ยนเงื่อนไข ที่โพสต์มาผมลบทิ้งไปแล้วครับ
จากการตรวจสอบไฟล์ที่แนบมานั้นยังมีการคำนวณเป็นวงกลม สังเกตได้ที่มุมซ้ายล่างจอ ยังติดคำว่า Circular references แสดงว่ายังมีปัญหาที่ชีตอื่น ให้ Unhide แล้วลบเซลล์ที่คำนวณเป็นวงกลมทิ้งให้หมดแล้วทดสอบดูใหม่ครับ
Tanasan
Member
Posts: 46 Joined: Mon May 04, 2015 10:53 am
#16
Post
by Tanasan » Wed Jun 08, 2016 7:59 am
ขอโทษครับอาจารย์
จากที่ผมได้ตรวจสอบไฟล์ เกี่ยวกับ Circular references นั้น
ผมได้ทำการสร้างไฟล์ Excel ขึ้นมาใหม่ แล้วทำการเขียนโค๊ดลงไป
พบว่า ปัญหาดังกล่าวนั้น เหมือนกับไฟล์เอกสารที่แนบไปก่อนหน้านี้เช่นกันครับ
ดังตัวอย่างไฟล์แนบเอกสาร ที่ทำขึ้นใหม่ ก็ไม่เป็นอาการเช่นเดิมคือ
เมื่อทำการเลือก ข้อมูลใน combobox ต้องทำการคลิกเลือก Cell อื่นแล้วกดปุ่ม Delete ถึงจะทำงานตาม เงื่อนไขครับอาจารย์
You do not have the required permissions to view the files attached to this post.
logic
Gold
Posts: 1511 Joined: Thu Mar 18, 2010 1:57 pm
Excel Ver: 365
#17
Post
by logic » Wed Jun 08, 2016 9:31 am
ถ้าเปลี่ยนค่าใน combobox แล้วให้โค้ดทำงานเลย อันนี้เป็น combobox change แล้วครับ ไม่ใช่ worksheet change ตอนแรกยังเข้าใจว่าเลือก combobox แล้วเปลี่ยนค่าในเซลล์ก่อนแล้วโค้ดค่อยทำงานครับ
You do not have the required permissions to view the files attached to this post.
Tanasan
Member
Posts: 46 Joined: Mon May 04, 2015 10:53 am
#18
Post
by Tanasan » Wed Jun 08, 2016 9:45 am
logic wrote: ถ้าเปลี่ยนค่าใน combobox แล้วให้โค้ดทำงานเลย อันนี้เป็น combobox change แล้วครับ ไม่ใช่ worksheet change ตอนแรกยังเข้าใจว่าเลือก combobox แล้วเปลี่ยนค่าในเซลล์ก่อนแล้วโค้ดค่อยทำงานครับ
ขอบคุณนะครับ
แต่ถ้าเปลี่ยนตรง ComboBox Change แล้ว ข้อมูลที่มีการเปลี่ยนแปลงภายหลัง จะไม่มีการอัพเดทแบบ Realtime เลยครับ
ไม่ทราบว่า พอจะมีวิธีไหมครับ คิดมา 2 วันแล้วครับ ยังไม่ออกเลย
logic
Gold
Posts: 1511 Joined: Thu Mar 18, 2010 1:57 pm
Excel Ver: 365
#19
Post
by logic » Wed Jun 08, 2016 10:29 am
สรุปคือต้องการให้ทำงาน 2 แบบ คือ คลิก combo แล้วโค้ดทำงาน หรืออีกไม่ก็ทำงานเมื่อเปลี่ยนค่าในเซลล์
แบบนี้ก็ต้องมีทั้งสองอันคือ worksheet_change กับ combobox_change ครับ
Tanasan
Member
Posts: 46 Joined: Mon May 04, 2015 10:53 am
#20
Post
by Tanasan » Wed Jun 08, 2016 10:42 am
logic wrote: สรุปคือต้องการให้ทำงาน 2 แบบ คือ คลิก combo แล้วโค้ดทำงาน หรืออีกไม่ก็ทำงานเมื่อเปลี่ยนค่าในเซลล์
แบบนี้ก็ต้องมีทั้งสองอันคือ worksheet_change กับ combobox_change ครับ
ใช่ครับ ให้ทำสองอย่างในเวลาเดียวกันเลยครับ
ถ้ามี 2 อัน เป็นจะดึงมาใช้อย่างไร หรอครับ ผมลองทำเป็น module ก็ไม่ได้เหมือนกันครับ
ช่วยแนะนำผมหน่อยครับ รบกวนพี่ด้วยครับ