Note: The other languages of the website are Google-translated. Back to English
English English

จะปิดหรือไม่อนุญาตตัวเลือก Save & Save As ใน Excel ได้อย่างไร

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

ปิดใช้งานตัวเลือกบันทึกและบันทึกเป็นด้วยรหัส VBA


ปิดใช้งานตัวเลือกบันทึกและบันทึกเป็นด้วยรหัส VBA

คุณสามารถเรียกใช้รหัส VBA ด้านล่างเพื่อปิดใช้งานตัวเลือกบันทึกและบันทึกเป็นใน Excel

1. ในสมุดงานคุณต้องปิดใช้งานฟังก์ชันบันทึกและบันทึกเป็นโปรดกด อื่น ๆ + F11 พร้อมกันเพื่อเปิดไฟล์ Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่าง

2 ใน Microsoft Visual Basic สำหรับแอปพลิเคชัน ดับเบิลคลิก สมุดงานนี้ ในแถบด้านซ้ายคัดลอกและวาง VBA 1 ด้านล่างลงในหน้าต่างรหัสจากนั้นคลิกไฟล์ ลด ปุ่ม. ดูภาพหน้าจอ:

VBA 1: ปิดใช้งานตัวเลือกบันทึกและบันทึกเป็นใน Excel

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    ThisWorkbook.Saved = True
End Sub

3. ในการเปิด บันทึกเป็น หน้าต่างเลือกโฟลเดอร์ที่จะบันทึกสมุดงานตั้งชื่อสมุดงานตามที่คุณต้องการแล้วเลือก สมุดงานที่เปิดใช้งานแมโคร Excel จาก บันทึกเป็นชนิด รายการแบบหล่นลงแล้วคลิกไฟล์ ลด ปุ่ม

4. ตอนนี้คัดลอกและวาง VBA 2 ด้านล่างลงในไฟล์ สมุดงานนี้ หน้าต่างรหัส ดูภาพหน้าจอ

VBA 2: ปิดใช้งานตัวเลือกบันทึกและบันทึกเป็นใน Excel

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim xName As String
xName = "CancelBeforeSave"

If Not Evaluate("=ISREF('" & xName & "'!A1)") Then
    Sheets.Add(after:=Worksheets(Worksheets.count)).Name = xName & ""
    Sheets(xName & "").Move after:=Worksheets(Worksheets.count)
    Sheets(xName & "").Visible = False
    Exit Sub
End If
    Cancel = True
End Sub

5 คลิกที่ ลด เพื่อบันทึกรหัสแล้วปิดสมุดงาน

สมุดงานได้รับการบันทึกเป็นสมุดงานที่เปิดใช้งานแมโคร Excel ด้วยไฟล์ ลด และ บันทึกเป็น ปิดใช้งานฟังก์ชัน

หมายเหตุ: ดูเหมือนว่าการเปลี่ยนแปลงจะถูกบันทึกไว้ในแผ่นงานปัจจุบันทุกครั้งที่คุณแก้ไขและบันทึกเวิร์กบุ๊ก แต่หลังจากปิดและเปิดสมุดงานอีกครั้งคุณจะพบว่าการเปลี่ยนแปลงล้มเหลวในการบันทึก


เครื่องมือเพิ่มประสิทธิภาพการทำงานในสำนักงานที่ดีที่สุด

Kutools สำหรับ Excel ช่วยแก้ปัญหาส่วนใหญ่ของคุณและเพิ่มผลผลิตของคุณได้ถึง 80%

  • นำมาใช้ใหม่: ใส่อย่างรวดเร็ว สูตรที่ซับซ้อนแผนภูมิ และสิ่งที่คุณเคยใช้มาก่อน เข้ารหัสเซลล์ ด้วยรหัสผ่าน; สร้างรายชื่อผู้รับจดหมาย และส่งอีเมล ...
  • ซุปเปอร์ฟอร์มูล่าบาร์ (แก้ไขข้อความและสูตรหลายบรรทัดได้อย่างง่ายดาย); การอ่านเค้าโครง (อ่านและแก้ไขเซลล์จำนวนมากได้อย่างง่ายดาย); วางลงในช่วงที่กรองแล้ว...
  • ผสานเซลล์ / แถว / คอลัมน์ โดยไม่สูญเสียข้อมูล แยกเนื้อหาของเซลล์ รวมแถว / คอลัมน์ที่ซ้ำกัน... ป้องกันเซลล์ซ้ำ; เปรียบเทียบช่วง...
  • เลือกซ้ำหรือไม่ซ้ำ แถว; เลือกแถวว่าง (เซลล์ทั้งหมดว่างเปล่า); Super Find และ Fuzzy Find ในสมุดงานจำนวนมาก สุ่มเลือก ...
  • สำเนาถูกต้อง หลายเซลล์โดยไม่เปลี่ยนการอ้างอิงสูตร สร้างการอ้างอิงอัตโนมัติ ถึงหลายแผ่น ใส่สัญลักษณ์แสดงหัวข้อย่อย, กล่องกาเครื่องหมายและอื่น ๆ ...
  • แยกข้อความ, เพิ่มข้อความ, ลบตามตำแหน่ง, ลบ Space; สร้างและพิมพ์ผลรวมย่อยของเพจ แปลงระหว่างเนื้อหาของเซลล์และความคิดเห็น...
  • ซุปเปอร์ฟิลเตอร์ (บันทึกและใช้โครงร่างตัวกรองกับแผ่นงานอื่น ๆ ); การเรียงลำดับขั้นสูง ตามเดือน / สัปดาห์ / วันความถี่และอื่น ๆ ตัวกรองพิเศษ โดยตัวหนาตัวเอียง ...
  • รวมสมุดงานและแผ่นงาน; ผสานตารางตามคอลัมน์สำคัญ แยกข้อมูลออกเป็นหลายแผ่น; Batch แปลง xls, xlsx และ PDF...
  • คุณสมบัติที่ทรงพลังมากกว่า 300 รายการ. รองรับ Office / Excel 2007-2019 และ 365 รองรับทุกภาษา ใช้งานง่ายในองค์กรหรือองค์กรของคุณ ทดลองใช้ฟรี 30 วันเต็ม รับประกันคืนเงิน 60 วัน
kte แท็บ 201905

แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มผลผลิตของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
ด้านล่าง officetab
จัดเรียงความคิดเห็นโดย
ความคิดเห็น (27)
ยังไม่มีการให้คะแนน เป็นคนแรกที่ให้คะแนน!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
นี้ไม่ทำงาน ฉันไม่สามารถบันทึกรหัสได้ มันหายไปเมื่อฉันเปิดไฟล์อีกครั้ง ฉันจะบันทึกรหัสได้อย่างไร
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
เรียน คุณที
ขอบคุณสำหรับคำถามของคุณ บทความได้รับการปรับปรุงเพื่อรองรับการบันทึกรหัสลงในสมุดงานในขณะนี้
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ที่รัก
บทความไม่ได้รับการปรับปรุง มันไม่ทำงาน
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดีเจน
บทความได้รับการปรับปรุงอีกครั้งพร้อมกับการแก้ปัญหา ได้โปรดลองดู ขอบคุณสำหรับความคิดเห็นของคุณ.
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
การอัปเดตโค้ดจะเพิ่มแผ่นงาน แต่ไม่เคยตรวจสอบจริงๆ ว่ามีค่า TRUE/FALSE ในแผ่นงานนั้นหรือไม่ การอัปเดตแก้ไขอะไรไม่ได้ มันแค่สร้างแผ่นงานที่ไม่มีประโยชน์ภายในสมุดงาน

ฉันคิดว่าคุณลืมตรวจสอบว่ามีค่า TRUE/FALSE บนแผ่นงานนั้นหรือไม่
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ตามที่ TEE โพสต์ เราจะบันทึกไฟล์ด้วยแมโครได้อย่างไร มันไม่อยู่ที่นั่นเมื่อฉันเปิดใหม่ ฉันยังได้รับข้อผิดพลาดใน ThisWorkbookSaved = True bit
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
เรียน เลส
ขอบคุณสำหรับคำถามของคุณ บทความได้รับการปรับปรุงเพื่อรองรับการบันทึกรหัสลงในสมุดงานในขณะนี้
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ตามที่ TEE และ LES โพสต์ เราจะบันทึกไฟล์ด้วยแมโครได้อย่างไร
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี
ขอบคุณสำหรับคำถามของคุณ บทความได้รับการปรับปรุงเพื่อรองรับการบันทึกรหัสลงในสมุดงานในขณะนี้
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
เพียงเพื่อช่วยใครก็ตามที่อ่านบทความนี้เพื่อค้นหาความช่วยเหลือในการกดปุ่มบันทึก ฉันคิดว่าฉันจะวางคำตอบไว้ที่นี่ เนื่องจาก "คริสตัล" ดูเหมือนจะไม่ตอบคำถาม....


หากคุณวางเวิร์กบุ๊กใน "โหมดการออกแบบ" แล้วกด SAVE ก็ควรจะใช้งานได้
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
จอมโจรที่รัก
ฉันคิดถึงประเด็นปัญหา ขอบคุณมากสำหรับความช่วยเหลือและการแบ่งปันของคุณ

ขอแสดงความนับถือ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันได้รับข้อผิดพลาดในการดีบักอยู่เรื่อยๆ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
วันดี,
คุณใช้ Excel เวอร์ชันใด
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี ฉันเป็นแฟนของเว็บไซต์นี้...ฉันเคยลองใช้โค้ดนี้ มันทำงานไม่มีที่ติ แต่มันปิดการใช้งาน "ตัวเลือกบันทึก" ด้วย ฉันไม่สามารถบันทึกแผ่นงาน Excel สิ่งที่ฉันต้องการคือปิดใช้งานเฉพาะคุณลักษณะ "บันทึกเป็น" ฉันอ่านความคิดเห็นของผู้ใช้รายอื่นด้วย ThisWorkbookSaved = True ก็ใช้ไม่ได้สำหรับฉันเช่นกัน คุณช่วยได้ไหม ขอบคุณมากสำหรับผลงานทั้งหมดของคุณ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ได้โปรด ฉันไม่ต้องการให้ผู้อื่นคัดลอกหรือบันทึกไฟล์ excel ของฉัน ฉันจะลบบันทึกหรือบันทึกเป็นได้อย่างไร
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันพยายามใช้รหัสสำหรับการไม่บันทึกไฟล์ แต่มันไม่ได้ผล มันบันทึกไฟล์.
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ขอบคุณสำหรับการตอบกลับของคุณ. ชื่นชมอย่างมาก ฉันต้องการให้คุณแนะนำวิธีการส่งไฟล์ที่บันทึกไว้ให้กับเพื่อนที่สามารถเปิดไฟล์ของฉันได้ แต่อ่านหรือแก้ไขเท่านั้น แต่ไม่สามารถบันทึกไฟล์ในโฟลเดอร์ใดๆ ได้
1. ตัวอย่างเช่นฉันมีไฟล์ที่บันทึกไว้ซึ่งฉันต้องการส่งไปที่ "A" เขาเปิดไฟล์ที่บันทึกไว้ แต่หลังจากเปิดแล้ว เขาอ่านหรือทำการเปลี่ยนแปลงในไฟล์ของฉัน เขาไม่สามารถบันทึกมันไว้ที่ส่วนท้ายของเขาในโฟลเดอร์ใด ๆ
2. ฉันมีรหัสอินเทอร์เน็ตที่ไม่อนุญาตให้บันทึก แต่ในกรณีนี้เมื่อฉันคัดลอกและวางโค้ด ไฟล์จะไม่ถูกบันทึก เลยส่งไฟล์ให้เค้าไม่ได้
3. ฉันจะส่งไฟล์ไปที่ Party "A" ด้วยรหัสที่บันทึกไว้ได้อย่างไรโดยหวังว่าเขาจะไม่สามารถบันทึกไฟล์ได้
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ยอดเยี่ยม!   
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สำหรับผู้ที่พบข้อผิดพลาดซึ่งหลังจากทำสิ่งนี้ไปแล้วเมื่อลองอีกครั้ง รหัสจะไม่บันทึก:

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

อย่างไรก็ตาม ฉันยังต้องสามารถแก้ไขไฟล์เป็นระยะๆ และบันทึกการเปลี่ยนแปลงได้ ฉันต้องลบโค้ด VBA ก่อน ทำการเปลี่ยนแปลง บันทึก แล้วเพิ่มโค้ด VBA กลับเข้าไปอีกครั้งเพื่อป้องกันไม่ให้ผู้อื่นบันทึกหรือไม่ หรือมีวิธีที่ง่ายกว่าในการแก้ไขและบันทึกในขณะที่ยังคงโค้ด VBA ไว้เหมือนเดิมหรือไม่
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดีโรเชลลีย์
ขอบคุณสำหรับความคิดเห็นของคุณ. รหัส VBA ได้รับการอัปเดตดังนี้ คุณต้อง:
1 กด อื่น ๆ + F11 คีย์เพื่อเปิด ของ Visual Basic บรรณาธิการ
2 ใน ของ Visual Basic บรรณาธิการ ดับเบิลคลิก สมุดงานนี้ ทางด้านซ้าย โครงการ บานหน้าต่างแล้วคัดลอกโค้ด VBA ต่อไปนี้ลงใน ThisWorkbook (รหัส) หน้าต่าง
3. บันทึกรหัสและบันทึกสมุดงานเป็นสมุดงาน Excel Macro-Enabled
หมายเหตุ:
1) ในรหัส "ทดสอบ Win10x64" หมายถึงชื่อผู้ใช้ในระบบปฏิบัติการของคุณ โปรดเปลี่ยนเป็นชื่อผู้ใช้ของคุณเอง
2) หลังจากเพิ่มรหัสแล้ว คุณสามารถแก้ไขสมุดงานและบันทึกได้ตามปกติ แต่ถ้าคนอื่นได้รับสมุดงานนี้ ตัวเลือกบันทึกและบันทึกเป็นจะไม่สามารถใช้ได้
Private Sub Workbook_BeforeClose(Cancel As Boolean)
'Updated by Extendoffice 20220930
    ThisWorkbook.Saved = True
End Sub
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim xName As String
xName = "Win10x64Test" 'The username in your operating system

If xName <> Environ("username") Then
Cancel = True
End If
End Sub
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันเพิ่งค้นพบว่าทันทีที่ฉันวางทางลัดไปยังไฟล์นี้ในตำแหน่งอื่น (ซึ่งผู้อื่นจะเข้าถึงได้) การป้องกันทั้งหมดของฉันจะไม่ทำงานอีกต่อไป แผ่นงานไม่ได้รับการป้องกัน (ซึ่งฉันได้ตั้งค่าไว้ก่อนหน้านี้) สมุดงานไม่ได้รับการป้องกัน (ซึ่งฉันได้ตั้งค่าไว้ก่อนหน้านี้ด้วย) และความสามารถบันทึก-บันทึกเป็นก็อยู่ที่นั่น ราวกับว่าไม่มีรหัส VBA เลย ถ้าฉันไปที่ไฟล์ต้นฉบับ มันก็ยังใช้ได้อยู่

มันเกี่ยวกับทางลัดที่ปอกการป้องกันทั้งหมดออกไปอย่างไร
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดีโรเชลลีย์
รหัส VBA ไม่สามารถทราบวิธีเปิดสมุดงานได้ ดังนั้นจึงไม่สามารถหยุดผู้อื่นไม่ให้เปลี่ยนไฟล์ด้วยการเปิดไฟล์ผ่านทางลัด
ขออภัยฉันไม่สามารถช่วยด้วยปัญหานี้
สำหรับปัญหาแรกที่คุณกล่าวถึงข้างต้น เราต้องการเวลาเพื่อดูว่าจะรับมือได้หรือไม่
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
เป็นไปได้ว่าผู้ใช้ที่ได้รับไฟล์จะปิดใช้งานมาโครและตัวควบคุมจะไม่ทำงาน โปรดช่วยเข้าใจ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดีทีพัค คชาเร
หากคุณไม่ต้องการให้ผู้ใช้รายอื่นปิดใช้งานมาโครหลังจากที่พวกเขาได้รับไฟล์ คุณสามารถซ่อนรหัสมาโครที่ไม่มีใครสามารถเปิดและดูได้
ดูว่าวิธีการในบทความต่อไปนี้ช่วยคุณได้หรือไม่
วิธีป้องกันและซ่อนแมโคร Excel
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ขอบคุณสำหรับการตอบสนองของคุณ ฉันคิดว่าลิงค์นั้นผิดพลาด คุณช่วยกรุณาด้วยลิงค์
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดีดีแพ็ก คชาเร
ขออภัยในความผิดพลาด ในการป้องกันและซ่อนแมโคร Excel คุณต้องกำหนดค่าดังต่อไปนี้
1 คลิกที่ อื่น ๆ + F11 ปุ่มเพื่อเปิดตัวแก้ไข VBA
2. ในโปรแกรมแก้ไข ให้คลิก เครื่องมือ > คุณสมบัติ VBAProject.
https://www.extendoffice.com/images/stories/comments/comment-picture-zxm/vba3.png
3 ใน คุณสมบัติ VBAProject ให้ไปที่ไฟล์ การป้องกัน ตรวจสอบแท็บ ล็อกโครงการเพื่อดู กล่องใส่รหัสผ่านและคลิกสุดท้าย OK.
https://www.extendoffice.com/images/stories/comments/comment-picture-zxm/vba4.png
จากนี้ไป ใครก็ตาม (รวมถึงตัวคุณเอง) ที่ต้องการเปิดโปรแกรมแก้ไข VBA ของสมุดงานนี้ ต้องใช้รหัสผ่าน
มีความคิดเห็นยังไม่มีการโพสต์ที่นี่
แสดงความคิดเห็นของคุณ
โพสต์ในฐานะแขก
×
ให้คะแนนโพสต์นี้:
0   ตัวอักษร
สถานที่แนะนำ