ไปยังเนื้อหาหลัก

วิธีบันทึกแผ่นงานทั้งหมดเป็นค่าเท่านั้น?

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

บันทึกแผ่นงานทั้งหมดเป็นค่าด้วยรหัส VBA เท่านั้น


ลูกศรสีฟ้าฟองขวา บันทึกแผ่นงานทั้งหมดเป็นค่าด้วยรหัส VBA เท่านั้น

รหัส VBA ต่อไปนี้สามารถช่วยให้คุณบันทึกแผ่นงานทั้งหมดเป็นค่าได้อย่างรวดเร็ว (ไม่มีสูตร) ​​และรักษาการจัดรูปแบบเซลล์ทั้งหมด กรุณาทำตามนี้:

1. กด ALT + F11 คีย์เพื่อเปิด Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่าง

2. คลิก สิ่งที่ใส่เข้าไป > โมดูลและวางรหัสต่อไปนี้ในไฟล์ โมดูล หน้าต่าง.

รหัส VBA: บันทึกแผ่นงานทั้งหมดเป็นค่าเท่านั้น:

Sub Saveasvalue()
'Updateby Extendoffice
    Dim wsh As Worksheet
    For Each wsh In ThisWorkbook.Worksheets
        wsh.Cells.Copy
        wsh.Cells.PasteSpecial xlPasteValues
    Next
    Application.CutCopyMode = False
End Sub

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

หมายเหตุ: ก่อนที่คุณจะใช้รหัสคุณสามารถบันทึกสำเนาของสมุดงานก่อน

สุดยอดเครื่องมือเพิ่มผลผลิตในสำนักงาน

🤖 Kutools AI ผู้ช่วย: ปฏิวัติการวิเคราะห์ข้อมูลโดยยึดตาม: การดำเนินการที่ชาญฉลาด   |  สร้างรหัส  |  สร้างสูตรที่กำหนดเอง  |  วิเคราะห์ข้อมูลและสร้างแผนภูมิ  |  เรียกใช้ฟังก์ชัน Kutools...
คุณสมบัติยอดนิยม: ค้นหา เน้น หรือระบุรายการที่ซ้ำกัน   |  ลบแถวว่าง   |  รวมคอลัมน์หรือเซลล์โดยไม่สูญเสียข้อมูล   |   รอบโดยไม่มีสูตร ...
การค้นหาขั้นสูง: VLookup หลายเกณฑ์    VLookup หลายค่า  |   VLookup ข้ามหลายแผ่น   |   การค้นหาที่ไม่ชัดเจน ....
รายการแบบเลื่อนลงขั้นสูง: สร้างรายการแบบหล่นลงอย่างรวดเร็ว   |  รายการแบบหล่นลงขึ้นอยู่กับ   |  เลือกหลายรายการแบบหล่นลง ....
ผู้จัดการคอลัมน์: เพิ่มจำนวนคอลัมน์เฉพาะ  |  ย้ายคอลัมน์  |  สลับสถานะการมองเห็นของคอลัมน์ที่ซ่อนอยู่  |  เปรียบเทียบช่วงและคอลัมน์ ...
คุณสมบัติเด่น: กริดโฟกัส   |  มุมมองการออกแบบ   |   บาร์สูตรใหญ่    สมุดงานและตัวจัดการชีต   |  ห้องสมุดทรัพยากร (ข้อความอัตโนมัติ)   |  เลือกวันที่   |  รวมแผ่นงาน   |  เข้ารหัส/ถอดรหัสเซลล์    ส่งอีเมลตามรายการ   |  ซุปเปอร์ฟิลเตอร์   |   ตัวกรองพิเศษ (กรองตัวหนา/ตัวเอียง/ขีดทับ...) ...
ชุดเครื่องมือ 15 อันดับแรก12 ข้อความ เครื่องมือ (เพิ่มข้อความ, ลบอักขระ, ... )   |   50 + แผนภูมิ ประเภท (แผนภูมิ Gantt, ... )   |   40+ ใช้งานได้จริง สูตร (คำนวณอายุตามวันเกิด, ... )   |   19 การแทรก เครื่องมือ (ใส่ QR Code, แทรกรูปภาพจากเส้นทาง, ... )   |   12 การแปลง เครื่องมือ (ตัวเลขเป็นคำ, การแปลงสกุลเงิน, ... )   |   7 ผสานและแยก เครื่องมือ (แถวรวมขั้นสูง, แยกเซลล์, ... )   |   ... และอื่น ๆ

เพิ่มพูนทักษะ Excel ของคุณด้วย Kutools สำหรับ Excel และสัมผัสประสิทธิภาพอย่างที่ไม่เคยมีมาก่อน Kutools สำหรับ Excel เสนอคุณสมบัติขั้นสูงมากกว่า 300 รายการเพื่อเพิ่มประสิทธิภาพและประหยัดเวลา  คลิกที่นี่เพื่อรับคุณสมบัติที่คุณต้องการมากที่สุด...

รายละเอียด


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

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มประสิทธิภาพการทำงานของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
Comments (18)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
thanks for help
This comment was minimized by the moderator on the site
sämst shjkjhgasghjdfsjhkfdgsdjhgafgb,ja u fdsvjkhgfkjahfg ka khdfzhjkg
This comment was minimized by the moderator on the site
Hi,
This is what i'm using (I exit the file automatically so I won't save accidently with values only).

But I wanted to keep just one sheet saved "normally" because I have a drop down list there that I would not like to lose when sharing the file.


Can anyone help me do this?

Thank you!


<div data-tag="code">Sub Saveasvalue()

Dim wsh As Worksheet
For Each wsh In ThisWorkbook.Worksheets
wsh.Cells.Copy
wsh.Cells.PasteSpecial xlPasteValues
Next
Application.CutCopyMode = False

savename = Application.GetSaveAsFilename(fileFilter:="Exel Files (*.xlsx), *.xlsx")
ActiveWorkbook.SaveAs Filename:=savename, FileFormat:=51

Application.DisplayAlerts = False 'exit without alerts
Application.Quit
End Sub
This comment was minimized by the moderator on the site
It runs good but i need a VBA of paste as value for a bunch of excels workbooks.



This comment was minimized by the moderator on the site
Is there any way to undo this if you've forgotten to save down the formula version first?
This comment was minimized by the moderator on the site
I need to publish Excel based financial statements with groupings. This worked to clear all the formulae and leave just the numbers. Other methods I tried cleared the groupings.
This comment was minimized by the moderator on the site
Good! Excellent! I need this but no any sheets
This comment was minimized by the moderator on the site
Remove all filters/protection in all the sheets. should work perfectly.
This comment was minimized by the moderator on the site
Tengo ese código, si bien es cierto funciona pero quisiera que no considere algunas hojas de mi archivo excel. se puede ?
Saludos.
This comment was minimized by the moderator on the site
Funcionou!! Muito Bom!!!
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations