เพื่อมุ่งให้เกิดคุณภาพจากการอบรมสูงสุด Excel Expert Training ให้การอบรม Excel กลุ่มเล็กๆ ไม่เกิน 6 คนทุกคนสามารถเรียนรู้ Excel อย่างใกล้ชิด จะมาคนเดียวหรือมาเป็นกลุ่มแล้วนัดวันอบรมแบบส่วนตัวก็ได้ ผู้เข้าอบรมทุกคนสามารถติดตามเนื้อหาที่อบรมได้อย่างชัดเจนจากจอภาพด้านหน้าของตัวเอง
Results 1 to 3 of 3

Thread: ต้องการบันทึกโค้ดห้ามบันทึก

  1. #1
    มิตรภาพ
    Guest

    ต้องการบันทึกโค้ดห้ามบันทึก

    ผมมีไฟล์สำหรับทำหน้าที่เป็นฟอร์มสำหรับกรอกข้อมูล จากนั้นจึงค่อยนำข้อมูลไปเก็บในฐานข้อมูลด้วย VBA ดังนั้น ผมจึงไม่ต้องการให้ User คนใดบันทึกไฟล์ที่เป็นแบบฟอร์มได้ ควรมีแต่ผมคนเดียวเท่านั้นที่สามารถแก้ไขและบันทึกไฟล์นี้ได้
    ผมได้โค้ดนี้จากเน็ตครับ
    Code:
    Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
       Dim Msg
       If ThisWorkbook.Saved = False Then
          Msg = "Saving Changes Is Disabled In Evaluation Version"
          Msg = MsgBox(Msg, vbOKCancel + vbExclamation)
          Cancel = True
          'Interupt here when saving this code for the first time. I type "bug" to interupt.
          'Debug (delete bug) and reset- then save process will continue.
          'In future you can set ThisWorkbook Saved property to True to save changes.
        End If
    End Sub
    สามารถป้องกันการบันทึกได้เป็นอย่างดีครับ
    แต่ปัญหาก็คือ ผมไม่สามารถ "บันทึก" โค้ด "ห้ามบันทึก" เข้ากับไฟล์นี้ได้ เนื่องจาก 2 บรรทัดนี้
    'Interupt here when saving this code for the first time. I type "bug" to interupt.
    'Debug (delete bug) and reset- then save process will continue.

    ผมอ่านแล้วยังไม่เข้าใจวิธีทำครับ จึงขอเรียนถาม ขอคำแนะนำในเรื่องนี้ด้วยครับ ขอบคุณครับผม

  2. #2
    มิตรภาพ
    Guest

    ทดลองจนได้คำตอบแล้วครับ

    หลังจากที่โพสต์คำถามไปแล้ว ว่างๆในแต่ละวันผมก็ได้พยายามทดลองเกี่ยวกับโค้ดนี้ สรุปได้ดังนี้ครับ คือที่บรรทัดต่อจาก Cancel = True เวลาต้องการ Save งานนี้ ก็อาจจะพิมพ์ . หรืออะไรก็ได้สัก 2-3 ตัว จากนั้นก็ไปกดปุ่มเพื่อ Save แต่โค้ดนี้จะ Run ไม่สำเร็จ เกิดการฟ้อง Error ขึ้น เพราะโค้ดไม่รู้ว่า . ที่ผมใส่คืออะไร จากนั้นผมก็กลับมาที่หน้าโค้ด แล้วลบ . ออกไป การฟ้อง Error ก็จะหายไป แต่ค่า Error ยังคงเก็บอยู่ในหน่วยความจำ ดังนั้น ตอนนี้จึงสามารถ Save งานได้ตามปกติ เพราะโค้ดจะยังไม่ทำงานครับ

    หลังจากนั้นก็ปิดไฟล์ลงแล้วเปิดใหม่ โค้ดก็จะป้องกันการ Save ได้เหมือนเดิมครับ (ที่จริง ในตัวอย่างเขาก็อธิบายไว้แล้ว แต่ผมไปงงตรงคำว่า bug กับ debug ซึ่งจริงๆแล้ว สามารถพิมพ์อะไรก็ได้ครับ)

  3. #3
    อรวีร์
    Guest

    เยี่ยมค่ะ พยายามจนได้วิธีใหม่ๆ

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •