:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser

การ วนloop เพื่อเรียก Function ตลอดเวลา

ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน Excel
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
tid_champ
Member
Member
Posts: 18
Joined: Wed Aug 06, 2014 4:52 pm

การ วนloop เพื่อเรียก Function ตลอดเวลา

#1

Post by tid_champ »

ผมติดเรื่อง Function ไม่ยอมทำงาน จะต้องเขียนเรียกที่ใหนหรอครับให้มันวนLoopเรียกFunctionนี้ตลอดเวลา จนกว่าจะปิด From ซึ่งFunction นี้ผมเขียนไว้ในFrom ที่2ครับ อย่างเช่นในกรณีเขียนC++ จะมี Void Loop ถ้าเขียน Call function ในนี้มันจะทำงานตลอดเวลา ผมสงสัยว่า VBA จะเขียนอย่างไรครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: การ วนloop เพื่อเรียก Function ตลอดเวลา

#2

Post by snasui »

:D ช่วยแนบไฟล์พร้อม Code ที่ติดปัญหามาด้วยจะได้ช่วยทดสอบได้ครับ
tid_champ
Member
Member
Posts: 18
Joined: Wed Aug 06, 2014 4:52 pm

Re: การ วนloop เพื่อเรียก Function ตลอดเวลา

#3

Post by tid_champ »

ที่ From set1 ครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: การ วนloop เพื่อเรียก Function ตลอดเวลา

#4

Post by snasui »

:D ช่วยอธิบายขั้นตอนการทดสอบ ผลลัพธ์ที่ได้ ผลลัพธ์ที่ต้องการมาด้วยครับ
tid_champ
Member
Member
Posts: 18
Joined: Wed Aug 06, 2014 4:52 pm

Re: การ วนloop เพื่อเรียก Function ตลอดเวลา

#5

Post by tid_champ »

ในFrom Set 2 เวลาCheckbox ใดๆ ถูกติ๊ก จะนำค่าp(0) - p(60) บวกกัน แล้วเก็บไว้ในตัวแปลTotal1 ครับ ปัจจุบันผมใช้ปุ่มSum สั่งงานมันครับ อยากให้เมื่อเกิดเหตุการณ์กับCheckbox ก็ให้เรียก Function Cal1 หรือ ให้ วนLoop เรียก Function Cal1 ทุกวินาทีในขณะที่ From Set1 ถูกเปิดอยู่ครับ
รบกวนด้วยครับผมเพิ่งหัดเขียนน่ะครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: การ วนloop เพื่อเรียก Function ตลอดเวลา

#6

Post by snasui »

:D Double Click CheckBox แต่ละตัวแล้วเพิ่ม Code ตามตัวอย่างด้านล่างครับ

Code: Select all

Private Sub CheckBox1_Click()
    Call Cal1
End Sub

Private Sub CheckBox2_Click()
    Call Cal1
End Sub
tid_champ
Member
Member
Posts: 18
Joined: Wed Aug 06, 2014 4:52 pm

Re: การ วนloop เพื่อเรียก Function ตลอดเวลา

#7

Post by tid_champ »

อีกข้อนึงครับ อาจารย์ ถ้าในกรณีที่่ค่าในตัวแปร Public Total1 เปลี่ยนแปลงให้แสดงค่าใน txtcap1 ที่อยู่ในfrom Main ครับ ต้องเขียนCode ลักษณะใหนและใส่ไว้ที่ใหนครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: การ วนloop เพื่อเรียก Function ตลอดเวลา

#8

Post by snasui »

:D ปกติยอดจะเปลียนทุกการคลิก CheckBox อยู่แล้ว เราสามารถปรับ Code ด้านบนเป็นตามด้านล่างได้ครับ

Code: Select all

Private Sub CheckBox1_Click()
    Call Cal1
    Main.txtcap1.Text = Total1
End Sub
tid_champ
Member
Member
Posts: 18
Joined: Wed Aug 06, 2014 4:52 pm

Re: การ วนloop เพื่อเรียก Function ตลอดเวลา

#9

Post by tid_champ »

ขอบคุณครับ อาจารย์ แล้วถ้าผมอยากให้checkbox คงค่าเดิมเอาไว้ ในกรณีที่ปิดFrom ไป ถ้าเปิดขึ้นมาใหม่ให้ตัวที่Check อยู่เหมือนเดิมต้องทำอย่างไรครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: การ วนloop เพื่อเรียก Function ตลอดเวลา

#10

Post by snasui »

:D หากเราปิด Form ด้วย Unload จะทำให้ค่าต่าง ๆ ถูกลบทิ้ง ให้ใช้การ Hide แทน เช่นจากเดิม Code คือ Unload Me ก็ปรับเป็น Me.Hide เป็นต้น
tid_champ
Member
Member
Posts: 18
Joined: Wed Aug 06, 2014 4:52 pm

Re: การ วนloop เพื่อเรียก Function ตลอดเวลา

#11

Post by tid_champ »

ขอบคุณครับ
tid_champ
Member
Member
Posts: 18
Joined: Wed Aug 06, 2014 4:52 pm

Re: การ วนloop เพื่อเรียก Function ตลอดเวลา

#12

Post by tid_champ »

รบกวนอีกรอบ หน้าset 1 ผมใส่ combobox 0-1 ก็runได้ปรกติ แต่พอใส่ Combobox2 ก็เกิดError เป็นเพราะอะไรครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: การ วนloop เพื่อเรียก Function ตลอดเวลา

#13

Post by snasui »

:D ไฟล์ที่แนบมา UserForm ที่ชีอ Set1 ไม่มี Control ที่ชื่อ ComboBox0 ช่วยตรวจสอบและแนบมาใหม่อีกครั้งครับ
tid_champ
Member
Member
Posts: 18
Joined: Wed Aug 06, 2014 4:52 pm

Re: การ วนloop เพื่อเรียก Function ตลอดเวลา

#14

Post by tid_champ »

ขออภัยครับ อีกรอบ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: การ วนloop เพื่อเรียก Function ตลอดเวลา

#15

Post by snasui »

:D ลองปรับ Code เป็นตามด้านล่างครับ

Code: Select all

 'Calculate
Public Sub Cal1()
    Total1 = (p(0) * Val(ComboBox0)) + (p(1) * Val(ComboBox1)) + (p(2) * Val(ComboBox2))
    TextBox1.Value = Total1
    Main.txtcap1.Text = Total1
End Sub
tid_champ
Member
Member
Posts: 18
Joined: Wed Aug 06, 2014 4:52 pm

Re: การ วนloop เพื่อเรียก Function ตลอดเวลา

#16

Post by tid_champ »

อาจารย์ครับ จะเขียนโค๊ดอย่างไรให้ เวลาเราคลิ๊กที่ textbox แล้วปฏิทิน ขึ้นมาให้เลือกวัน หลังจากนั้นให้วันที่เข้าไปอยู่ในtextbox น่ะครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: การ วนloop เพื่อเรียก Function ตลอดเวลา

#17

Post by snasui »

:D จะมีปฏิทินได้ก็ต้องสร้าง Control ที่เป็นปฏิทินขึ้นมาใช้เองครับ (ใน Excel รุ่น 2010+ ไม่มี Date Time Picker ให้ใช้)
tid_champ
Member
Member
Posts: 18
Joined: Wed Aug 06, 2014 4:52 pm

Re: การ วนloop เพื่อเรียก Function ตลอดเวลา

#18

Post by tid_champ »

คือผมสร้างมาแล้วแต่เวลาคลิ๊กเลือก ที่ปฏิทินแล้วค่าไม่ลงไปในTextBox น่ะครับ ไม่ทราบว่าจะmoveค่าอย่างไร
User avatar
snasui
Site Admin
Site Admin
Posts: 31257
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: การ วนloop เพื่อเรียก Function ตลอดเวลา

#19

Post by snasui »

:D แนบไฟล์ตัวอย่างที่เกิดปัญหานั้นมาพร้อมขัันตอนการทำงาน ผลลัพธ์ที่ได้ ผลลัพธ์ที่ต้องการให้เป็นมาด้วยจะได้ช่วยตรวจสอบได้ครับ
tid_champ
Member
Member
Posts: 18
Joined: Wed Aug 06, 2014 4:52 pm

Re: การ วนloop เพื่อเรียก Function ตลอดเวลา

#20

Post by tid_champ »

รบกวนช่วยดูCode ให้หน่อยครับ ผมทำpopup ขึ้นมาแล้วแต่ เวลาคลิ๊กแล้ว Error ครับ
You do not have the required permissions to view the files attached to this post.
Post Reply