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

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

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

บันทึกแผ่นงานทั้งหมดเป็นค่าด้วยรหัส 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 สำหรับ Excel แก้ปัญหาส่วนใหญ่ของคุณและเพิ่มผลผลิตของคุณได้ถึง 80%

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

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

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มประสิทธิภาพการทำงานของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
ด้านล่าง officetab
จัดเรียงความคิดเห็นโดย
ความคิดเห็น (18)
ยังไม่มีการให้คะแนน เป็นคนแรกที่ให้คะแนน!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ขอบคุณ! รหัส VBA ทำงานได้อย่างยอดเยี่ยม
สิ่งหนึ่งที่ฉันสังเกตเห็นคือ เมื่อฉันพยายามใช้กับเวิร์กบุ๊กที่มีตัวกรองในบางเซลล์ ก็ใช้ไม่ได้
วิธีแก้ปัญหาใด ๆ สำหรับรหัสนี้ในการทำงานโดยไม่ต้องปิดใช้งานตัวกรอง
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันมีปัญหาเดียวกันเมื่อใช้โค้ด VBA พร้อมตัวกรอง คุณมีวิธีแก้ปัญหาหรือไม่?
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
เฮ้คุณสามารถแก้ไขได้ไหม ฉันมีปัญหาเดียวกัน
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ดีมาก! ได้แก้ปัญหาหลายอย่างของฉัน ขอบคุณมาก. ความนับถือ.
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ขอบคุณมากพี่ .. นี่มันน่าทึ่ง .. ช่วยฉันมาก
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ย่อย Saveasvalue()
'Updateby Extendoffice 20161025
Dim wsh เป็นแผ่นงาน
สำหรับแต่ละ wsh ใน ThisWorkbook.Worksheets
wsh.Cells.Copy
wsh.Cells.PasteSpecial xlPasteValues ​​- รับข้อผิดพลาดรันไทม์ 1004 - ใครก็ได้ช่วยเรื่องนี้
ต่อไป
Application.CutCopyMode = เท็จ
ย่อยสิ้นสุด
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
เมื่อฉันเรียกใช้รหัสนั้น ฉันได้รับข้อผิดพลาด "ได้รับข้อผิดพลาดรันไทม์ 1004"
FYI ใน excel ของฉันมีเซลล์ผสาน

มันจะเป็นประโยชน์ถ้ามีคนให้การแก้ปัญหา

ขอขอบคุณ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดีมีนา
โค้ดด้านบนทำงานได้ดีในสมุดงานของฉัน คุณใช้ excel เวอร์ชันใด
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
มันทำงานได้ดี ขอบใจ.

@mirna: คุณต้องยกเลิกการป้องกันแผ่นงานหรือเซลล์ VB ไม่ชอบโหมดป้องกัน :)
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฟุนชิโนนู!! มุอิโตะ บอม!!!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
Tengo ese código, si bien es cierto funciona pero quisiera que noพิจารณา algunas hojas de mi archivo excel เซ puede ?
อาศิรพจน์
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ลบตัวกรอง/การป้องกันทั้งหมดในทุกแผ่น ควรทำงานได้อย่างสมบูรณ์
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ดี! ยอดเยี่ยม! อยากได้แต่ไม่มีแผ่น
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันต้องการเผยแพร่งบการเงินโดยใช้ Excel พร้อมการจัดกลุ่ม วิธีนี้ใช้ได้ผลในการล้างสูตรทั้งหมดและเหลือเพียงตัวเลขเท่านั้น วิธีอื่นที่ฉันพยายามล้างการจัดกลุ่ม
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
มีวิธีใดบ้างที่จะเลิกทำเช่นนี้หากคุณลืมบันทึกเวอร์ชันของสูตรก่อน
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
มันทำงานได้ดี แต่ฉันต้องการ VBA ของการวางเป็นค่าสำหรับสมุดงาน excels จำนวนหนึ่ง



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

แต่ก็อยากเก็บไว้ บันทึกเพียงแผ่นเดียว "ปกติ" เพราะฉันมีรายการดรอปดาวน์อยู่ที่นั่นซึ่งฉันไม่อยากสูญเสียเมื่อแชร์ไฟล์


ใครสามารถช่วยฉันทำเช่นนี้?

ขอขอบคุณ!


ย่อย Saveasvalue()

Dim wsh เป็นแผ่นงาน
สำหรับแต่ละ wsh ใน ThisWorkbook.Worksheets
wsh.Cells.Copy
wsh.Cells.PasteSpecial xlPasteValues
ต่อไป
Application.CutCopyMode = เท็จ

savename = Application.GetSaveAsFilename(fileFilter:="Exel Files (*.xlsx), *.xlsx")
ActiveWorkbook.SaveAs ชื่อไฟล์:=savename, FileFormat:=51

Application.DisplayAlerts = เท็จ 'ออกโดยไม่มีการแจ้งเตือน
ใบสมัครเลิก
ย่อยสิ้นสุด
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
sämst shjkjhgasghjdfsjhkfdgsdjhgafgb จา u fdsvjkhgfkjahfg ka khdfzhjkg
มีความคิดเห็นยังไม่มีการโพสต์ที่นี่
แสดงความคิดเห็นของคุณ
โพสต์ในฐานะแขก
×
ให้คะแนนโพสต์นี้:
0   ตัวอักษร
สถานที่แนะนำ

ช่องทางอื่นๆ

ลิขสิทธิ์© 2009 - wwwextendoffice.com | สงวนลิขสิทธิ์. ขับเคลื่อนโดย ExtendOffice. | แผนผังเว็บไซต์
Microsoft และโลโก้ Office เป็นเครื่องหมายการค้าหรือเครื่องหมายการค้าจดทะเบียนของ Microsoft Corporation ในสหรัฐอเมริกาและ / หรือประเทศอื่น ๆ
ได้รับการปกป้องโดย Sectigo SSL