Page 1 of 1

Update Link หลังจากบันทึกข้อมูลข้ามไฟล์

Posted: Thu Feb 13, 2020 5:36 pm
by booky
รบกวนสอบถามผู้รู้ครับ

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

ตรงที่ Debug ตามภาพที่แนบมาครับ

ขอบคุณครับ

Re: Update Link หลังจากบันทึกข้อมูลข้ามไฟล์

Posted: Thu Feb 13, 2020 9:47 pm
by snasui
:D กรุณาแนบไฟล์พร้อม Code มาด้วยจะได้สะดวกในการตอบของเพื่อนสมาชิกครับ

Re: Update Link หลังจากบันทึกข้อมูลข้ามไฟล์

Posted: Fri Feb 14, 2020 7:26 am
by booky
สวัสดีครับ

ผมได้แนบไฟล์มาให้ 2 ไฟล์ตามด้านล่างนี้ครับ
ขอบคุณสำหรับการตอบกลับครับ

Re: Update Link หลังจากบันทึกข้อมูลข้ามไฟล์

Posted: Fri Feb 14, 2020 5:27 pm
by puriwutpokin
ลองปรับตรงนี้ดูครับ

Code: Select all

 Workbooks("Main.xlsm").UpdateLink , Type:=xlExcelLinks

Re: Update Link หลังจากบันทึกข้อมูลข้ามไฟล์

Posted: Fri Feb 14, 2020 6:01 pm
by booky
สวัสดีครับ

ทดลองแล้วได้ผลครับ ขอบคุณสำหรับคำแนะนำครับ

Re: Update Link หลังจากบันทึกข้อมูลข้ามไฟล์

Posted: Fri Feb 14, 2020 6:11 pm
by booky
อยากสอบถามเพิ่มเติมอีกข้อหนึ่งครับ

จากไฟล์ที่ผมแนบมาข้างต้นจะเห็นว่า มีโน้ตอยู่ในโค้ดตามที่แสดงด้านล่างนี้ครับ ซึ่งที่จริงแล้วผมตั้งใจใส่โค้ดนี้ไว้เพื่อปลดล็อกไฟล์ Data ก่อนบันทึก และล็อกอีกครั้งเมื่อบันทึกเสร็จ เพื่อป้องกันการแก้ไขเองจากภายนอก แต่เมื่อเปิดใช้โค้ดนี้ทำให้บางครั้งก็บันทึกผ่าน บางครั้งก็บันทึกไม่ผ่าน มีคำแนะนำเพิ่มเติมสำหรับโค้ดนี้มั้ยครับ

Code: Select all

'ActiveSheet.Unprotect Password:="candle"  '<UnProtect
.Range("Com.Target").PasteSpecial xlPasteValues
'ActiveSheet.Protect Password:="candle" '<Protect

Re: Update Link หลังจากบันทึกข้อมูลข้ามไฟล์

Posted: Fri Feb 14, 2020 8:39 pm
by puriwutpokin
ลองปรับเป็น

Code: Select all

ActiveSheet.Unprotect Password:="candle" '<UnProtect
.Range("Com.Target").PasteSpecial xlPasteValues
ActiveSheet.Protect Password:="candle", Contents:=True '<Protect