สมัครสมาชิก
 

กดคีย์ F8 (Step Into) ในการดีบักโค้ดที่ควบคุม Excel อาจไม่หยุดที่โค้ดบรรทัดต่อไป



0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

07 เม.ย. 61 , 15:01:43
อ่าน 243 ครั้ง

สันติสุข

เวลาเราดีบักโปรแกรม โค้ดจะหยุดรันเมื่อถึงบรรทัดที่ตั้ง break point ไว้ ปกติเมื่อกดคีย์ F8 โค้ดก็จะทำงานต่อไปหนึ่งบรรทัดและหยุดรอเราว่าจะให้ทำอะไรต่อไป แต่บางกรณีที่โค้ดนั้นเขียนเพื่อโปรแกรมการทำงานของ Excel เช่น

1410              xlSheet.Cells(wR, wxlOut_ColIDLine) = wRS!PMU2_ID
1420              xlSheet.Cells(wR, wxlOut_ColStartDT) = wRS!PMU2_StartDT
1430              xlSheet.Cells(wR, wxlOut_ColMatCD) = wRS!PMU2_MATCD

สมมุติว่าตั้ง break point ไว้ที่บรรทัด 1410  พอโค้ดหยุดแล้ว และเรากดคีย์ F8  แทนที่โค้ดจะหยุดที่บรรทัด 1420  ปรากฏว่าโค้ดจะไม่หยุด และทำงานต่อไปตามปกติ ถ้าอยากให้หยุดที่บรรทัด 1420 ก็ต้องตั้ง break point ไว้ที่นั่นอีกบรรทัด แต่จะไม่เกิดปัญหานี้ในโค้ดที่ควบคุมการทำงานของ Access เอง สาเหตุเป็นปัญหาทางเทคนิคของตัว VBA เอง วิธีแก้ก็คือให้แก้ไข Registry ในระบบวินโดว์ตามลิงค์นี้ครับ http://www.contextures.com/excelvbatips.html#f8 link (ดูในส่วน F8 Key Stops Working)

หมายเหตุ : ปัญหานี้สามารถเกิดได้เมื่อเขียน VBA ภายในตัวโปรแกรม Excel เองโดยตรงด้วย
« แก้ไขครั้งสุดท้าย: 07 เม.ย. 61 , 15:06:02 โดย สันติสุข »

 
โพสต์นี้ได้รับคำขอบคุณจาก: PookPuy, OddyWriter


บอร์ดเรียนรู้ Access สำหรับคนไทย



There are no comments for this topic. Do you want to be the first?